请检查示例json数据:
String INPUT = "{\"a\":[1,2,{\"b\":true},3],\"c\":3}";
我想用杰克逊的ObjectMapper解析那个json。 你可以看到" a"是一个包含整数和对象的数组。如何使用anotations在POJO中定义变量? 提前致谢
答案 0 :(得分:1)
您可以像下面一样创建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类,直到它包含任何特定类型。