我当前的 json 文件如下所示:
{
"root": {
"node1a":[
],
"node1b":[
"foo",
"bar"
]
}
}
jackson 反序列化:
@JsonCreator
class DeserializationClass{
Map<String, List<String>> nodes;
DeserializationClass(@JsonProperty("root") final Map<String, List<String>> nodes) {
this.nodes = nodes;
}
}
但是,我想转移到诸如
之类的结构{
"root": {
"node1a":[
],
"node1b":[
"foo",
"bar",
{
"key1":"value",
"key2":"value"
}
]
}
}
是否可以通过替换使用注释来反序列化:
Map<String, List<String>>
与
Map<String, List<AnotherClass>>?
最佳答案
您的node1b
现在是对象的混合数组,因此除非您要实现完整的自定义反序列化器,否则您可以获得的最好的结果是 List<Object>
,其中一些对象将是 Map
s。
关于java - java中使用jackson注解反序列化字符串和对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56084210/