我需要将 map 传递回 Web 应用程序。
我习惯将 map 封装在一个 JSONObject 中
http://json.org/java/
但是因为我使用的是 Spring 和 Jackson Haus。
有没有更简单的方法来维护 pojo?我可以只注释 MAP 吗?
最佳答案
jackson 有 com.fasterxml.jackson.core.JsonNode
,以及特定的子类型,如 ObjectNode
.
这些形成所谓的Tree Model
,这是使用 Jackson 处理 JSON 的 3 种方法之一——其他一些库(如 org.json
)仅提供这种方式。
所以你应该可以只使用 JsonNode
反而;使用 org.json
没什么意义图书馆;它很慢,并且有过时的 API。
或者,您可以使用 java.util.Map
,然后返回。 jackson 可以处理标准List
s, Map
s 和其他 JDK 类型就好了。
关于Spring 和 Jackson 中的 JSONObject 替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18972013/