使用Jackson反序列化包装列表

loc*_*ost 6 java json list jackson

我有一个像这样的JSON对象:

{"geonames":[
   {"countryId":"2017370",
    "adminCode1":"73"},
   {"countryId":"2027370",
    "adminCode1":"71"},
    ...]}
Run Code Online (Sandbox Code Playgroud)

我怎样才能反序列化该对象List<GeoName>,忽略所述第一层(GEONAMES包装器),而不是反序列化到含有包装对象List<GeoName>@JsonProperty("geonames")

Sot*_*lis 4

使用ObjectReader带有根名称的an

ObjectMapper mapper = new ObjectMapper();
ObjectReader reader = mapper.reader(new TypeReference<List<GeoName>>() {}).withRootName("geonames");
List<GeoName> list = reader.readValue(json);
Run Code Online (Sandbox Code Playgroud)