【发布时间】:2013-12-05 00:33:15
【问题描述】:
我有一个 JSON 对象,它有两个属性:“key”是一个字符串,“value”可以反序列化为 Java bean。
{ "key": "foo", "value": "bar" }
问题是,给定这些对象的列表,我可以将其反序列化为 Map 吗?
[{"key": "foo1", "value": "bar1"}, {"key": "foo2", "value": "bar2"}] -> Map<String, String>
目前使用 Jackson-databind 2.1
【问题讨论】:
-
请完整解决您的问题。问题出在哪里。看不到你在做什么。
-
基本上,您希望将数据的属性列表/XML 排列转换为删除“键”和“值”术语的更简单的形式,这样您就会得到
{"foo1" : "bar1", "foo2" : "bar2", ...}。这可以通过外部数组的简单循环来完成,但是我(在 Objective-C 中)看到了其他“聪明”(尽管不一定更清洁或更有效)的方法来做到这一点。除非你是为了精神刺激,否则我建议使用简单的循环。 (如果不明显,请使用 Jackson 或其他工具转换为地图列表,然后遍历列表以构建新地图。)