Java 如何从改装中获得一般响应
我有一个问题,我使用Reformation2对服务器进行三次调用以检索一些jSon数据。我遇到的问题是,我不想为响应创建三个单独的结果类,因为除了保存jSonArray的列表数组类型之外,数据将是相同的 e、 g。Java 如何从改装中获得一般响应,java,android,generics,retrofit2,Java,Android,Generics,Retrofit2,我有一个问题,我使用Reformation2对服务器进行三次调用以检索一些jSon数据。我遇到的问题是,我不想为响应创建三个单独的结果类,因为除了保存jSonArray的列表数组类型之外,数据将是相同的 e、 g。 列表 列表 所以我上了一节课 public class Response<T> { @SerializedName("page") @Expose private int page; @SerializedName("results")
列表
列表
所以我上了一节课
public class Response<T> {
@SerializedName("page")
@Expose
private int page;
@SerializedName("results")
@Expose
private List<T> results = new ArrayList<T>();
@SerializedName("total_results")
@Expose
private int totalResults;
public int getPage()
{
return page;
}
public void setPage(int page){
this.page = page;
}
public List<T> getResults(){
return results;
}
public void setResults(List<T> results){
this.results = results;
}
public int getTotalResults(){
return totalResults;
}
public void setTotalResults(int totalResults){
this.totalResults = totalResults;
}
}
Movie只是一个包含getter和setter的类,其相应字段具有@SerializedName注释。将响应更改为我创建的响应,而不是改型时的默认响应,从而修复了此问题。您现在做了什么?
@Override
public void onResponse(Call<Response<Movie>> call, Response<Response<Movie>> response) {
List<Movie> movies = response.body().getResults();
}