【发布时间】:2012-01-09 18:00:38
【问题描述】:
我希望转换 json 对象列表,这些对象本身可能包含 Json 对象或 Json 对象列表,并且希望结果是适当的 Scala 映射或列表,但是,我只能将顶级对象转换为转换为地图或列表。 有没有简单的方法来做到这一点?
例如在 REPL 中
objectMapper.readValue("{\"test\":\"113123\",\"myList\":[{\"test2\":\"321323\"},{\"test3\":\"11122\"}]}", classOf[Map[String,Any]])
会回来
res: Map[String,Any] = Map(test -> 113123, myList -> [{test2=321323}, {test3=11122}])
我想去哪里
res: Map[String,Any] = Map(test -> 113123, myList -> List(Map(test2 -> 321323), Map(test3 -> 111222)))
【问题讨论】:
-
你真的需要使用Jackson吗?将 lift-json 与案例类一起使用要简单得多。
-
如果映射有效,那么使用 Jackson 数据绑定就没有什么复杂的了:lift-json 怎么会比上面显示的一个衬垫更简单?
-
我用过 lift 和 Jackson,发现 lift 在处理 15,000 多个 json 对象时出现内存问题,而 Jackson 处理得很好
-
我构建了对象映射器以与 mapModule 和 seqModule 一起使用
-
我还没有尝试 jerkson,有可用的 jar 吗?(我是 jvm 的新手,还没有从 github 解决构建 jar..)