【发布时间】:2014-08-21 20:54:44
【问题描述】:
我在将 json 数组解析为指定对象的 java 集合时遇到问题。
JSON 响应:
{
"data": [
{
"country_code": "US",
"name": "United States",
"supports_region": "true",
"supports_city": "true"
},
{
"country_code": "CA",
"name": "Canada",
"supports_region": "true",
"supports_city": "true"
},
{
"country_code": "GB",
"name": "United Kingdom",
"supports_region": "true",
"supports_city": "true"
}
]
}
接下来我要上单国课:
@JsonIgnoreProperties(ignoreUnknown = true)
public class TargetCountry {
@JsonProperty("country_code")
private String countryCode;
@JsonProperty("name")
private String name;
public String getCountryCode() {
return countryCode;
}
public String getName() {
return name;
}
}
我正在使用 Jackson 库将 json 解析为 java。
如果没有包含数组的额外字段“数据”,一切都会好起来的。
由于“数据”字段,我不想制作额外的包装类。如何以优雅的方式解析该响应以接收:Collection<TargetCountry> 例如:
RestTemplate restTemplate = new RestTemplate();
TargetCountry[] countryList = restTemplate.getForObject(uri, TargetCountry[].class);
【问题讨论】:
标签: java json spring facebook-graph-api jackson