我对Json的答复为
"Test1": {
"Test2": [
[
0,
"US TV",
[]
]
]
}
我创建了一个
之类的Test2类 @JsonProperty("Test2")
@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
Test2[] arrayObjects;
不确定在Test2类中如何给[],有人可以建议如何为Java中提到的Json响应创建Pojo吗?
答案 0 :(得分:2)
像这样声明字段:
@JsonProperty("Test2")
Object[][] test2;
或类似这样:
@JsonProperty("Test2")
List<List<Object>> test2;
类型为Object
,因为内部数组包含数字,字符串和数组。
该字段的名称无关紧要,因为您已经@JsonProperty
为JSON命名了该字段。
您当然也可以做List<Object[]>
或List<Object>[]
,但这些看上去有点怪。
更新:证明上述代码有效:
Foo.java
@JsonRootName("Test1")
class Foo {
@JsonProperty("Test2")
List<List<Object>> bar;
public static void main(String[] args) throws Exception {
Foo foo = new ObjectMapper()
.configure(DeserializationFeature.UNWRAP_ROOT_VALUE, true)
.readValue(new File("test.json"), Foo.class);
System.out.println(foo.bar);
}
}
test.json
{
"Test1": {
"Test2": [
[
0,
"US TV",
[]
]
]
}
}
输出
[[0, US TV, []]]