【发布时间】:2016-10-07 21:39:04
【问题描述】:
请检查示例 json 数据:
String INPUT = "{\"a\":[1,2,{\"b\":true},3],\"c\":3}";
我想用jackson ObjectMapper 解析那个json。 如您所见,“a”是一个包含整数和对象的数组。如何使用注释在 POJO 中定义该变量? 在此先感谢
【问题讨论】:
请检查示例 json 数据:
String INPUT = "{\"a\":[1,2,{\"b\":true},3],\"c\":3}";
我想用jackson ObjectMapper 解析那个json。 如您所见,“a”是一个包含整数和对象的数组。如何使用注释在 POJO 中定义该变量? 在此先感谢
【问题讨论】:
您可以像下面这样创建 pojo,因为数组包含不同的对象,所以 pojo 将具有 Object 类型的数组列表来接受每种类型 -
public class JsonInput {
@JsonProperty("a")
private List<Object> a = new ArrayList<Object>();
@JsonProperty("c")
private Integer c;
public List<Object> getA() {
return a;
}
public void setA(List<Object> a) {
this.a = a;
}
public Integer getC() {
return c;
}
public void setC(Integer c) {
this.c = c;
}
}
注意:您可能无法进一步控制 json 输入数组中的对象以将其映射到 pojo 类,直到它拥有任何特定类型。
【讨论】: