【发布时间】:2016-04-10 10:10:38
【问题描述】:
我有一个字符串格式的输入数据。
{key: value,
key1: value1,
key2: value2,
key3:{key4:{k1:v1,
k2,v2}
key5:{k1:v1,
k2:v2}
}
}
我想使用 jackson 将此数据从 JSON 转换为 Java 对象:
ObjectMapper mapper = new ObjectMapper();
map = mapper.readValue(json, new TypeReference<???>(){});
我无法想出最终的地图结构来存储这些数据。
有什么想法吗?
【问题讨论】:
-
为什么要将它存储到
Map中?创建一个自定义对象。 -
我想处理这些数据。它实际上是json格式。所以如果我能得到地图,那么我很容易得到所需的属性
-
这不是正确的 JSON 格式。 key4 和 key5 需要是 jsonarray,请更新问题。如果你有有效的 JSON 检查下面的链接stackoverflow.com/questions/34388198/…
-
@Tunaki 你能给我一些例子吗?晴天,格式正确
-
你使用的是 Jackson,所以你可以使用 JsonAnyGetter 和 JsonAnySetter。此注释旨在使用任何类型的 JSON(嵌套,N 级)。使用这些注释创建自定义对象和 MAP 字段。
标签: java json string jackson deserialization