java - 将 JsonNode 对象转换为 Map

标签 java json jackson playframework-2.2

我有一个 C# 程序向我发送一个 json 对象。 我正在制作一个 Java Play 网站来捕获 POST 数据。 我将正确的数据作为 JsonNode 对象,但需要将其转换为 Map

我正在使用 com.fasterxml.jackson.databind.JsonNode

这是我正确捕获 JsonNode 对象的地方:

public static Result index() {
    JsonNode json = request().body().asJson();
}

现在我有了对象,我需要弄清楚如何将其转换为 Map 以便我可以对它进行一些魔术。稍后我想将 Map 转换回 json 对象以在响应中发送。

我一直在查看文档,但可用的方法并不能作为解决方案。

这是我一直在为这个特定的 JsonNode 对象引用的文档: http://fasterxml.github.io/jackson-databind/javadoc/2.2.0/com/fasterxml/jackson/databind/JsonNode.html

最佳答案

来到这里试图自己找到答案。挖得更深一点,找到了一点答案here

基本上只需使用 ObjectMapper 为您转换值:

ObjectMapper mapper = new ObjectMapper();
Map<String, Object> result = mapper.convertValue(jsonNode, new TypeReference<Map<String, Object>>(){});

关于java - 将 JsonNode 对象转换为 Map,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26766256/

相关文章:

javascript - 如何检查 string = node.js 中的另一个字符串?

javascript - 无法访问Json数据并在canvas d3js上绘制线条

javascript - 如何通过 javaScript 从 json 访问数据?

java - 如果枚举映射键为 null 或未知,则忽略 JSON 反序列化

Java 句柄(互斥锁?)被泄露且未被释放(不是文件句柄)

java - 如何关闭 JFrame 后跟另一个 JFrame?

java - 如何将动态json值映射到Pojo中的HashMap

java - 需要在 ORMLite 中保存 JSON 并通过 Jackson 序列化

java - 小版本更新后 Spring Security 异常 : "Please ensure Spring Security & Spring MVC are configured in a shared ApplicationContext"

java - 查找类名冲突和 jar 文件版本差异和冗余