我知道这已经被问了很多,但是,我发现的问题都没有解决我的特定问题。
这是我的JSON
[JSON-URL][1]
[
{
"unit":"IMECA",
"value":29,
},
{
"unit":"IMECA",
"value":43,
}
]
这是我的 DTO
爪哇分区
public class Zona {
private String unit;
private int value;
public String getUnit() {
return unit;
}
public void setUnit(String unit) {
this.unit = unit;
}
public int getValue() {
return value;
}
public void setValue(int value) {
this.value = value;
}
@Override
public String toString() {
return String.valueOf(unit) + ": " + String.valueOf(value);
}
}
这是我的界面
Api.java公司
public interface Api {
@GET("/data/heatmap_stations.json")
Call<Zona> getZona();
}
我有点明白为什么会这样,因为JSON数组是响应,但是Jackson Gson期望一个JSON对象。
我尝试像这样创建一个 POJO:
Zonas.java
Public class Zonas extends ArrayList<Zona> {}
以及改变接口和改型呼叫中的呼叫签名,将单个DTO替换为复数,(从呼叫
变化
public interface Api {
@GET("/data/heatmap_stations.json")
Call<Zona> getZona();
}
到
public interface Api {
@GET("/data/heatmap_stations.json")
Call<List<Zona>> getZona();
}
您告诉它期望一个Zona
对象,但它返回的是Zona
的数组