我有一个HashMap对象,我想使用com.fasterxml.jackson.databind.ObjectMapper将其转换为JsonNode树.做这件事最好的方法是什么?

I found the following code but since I don't know the Jackson API well, I wonder if there are some better ways.

mapper.reader().readTree(mapper.writeValueAsString(hashmap))

推荐答案

以下操作将会起到作用:

JsonNode jsonNode = mapper.convertValue(map, JsonNode.class);

或者使用comments中指出的more elegant溶液:

JsonNode jsonNode = mapper.valueToTree(map);

If you need to write your jsonNode as a string, use:

String json = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(jsonNode);

Json相关问答推荐

嵌套自定义解组

输入请求中不存在null的条件抖动

将json数组反序列化为选项 struct

如何在JQ过滤器文件中使用多行?

过go 24小时内判断员事件的EventBridge事件模式

我发现GoFr响应总是包含在数据字段中,如何返回自定义响应?

报告重复的对象键

(已回答)JSON 读取函数返回未定义而不是预期值 - Typescript

GitHub Pages无法正确显示我的项目

如何使用jq按键 Select 并获取整个json输出来更改json中的多个值

转换为Json时忽略内部对象中的数组

使用不同行数的数据创建嵌套Jolt

在 CodePipeline 中调用 lambda 时传递用户参数

将请求中的数据推送到数组中

我需要在 mongodb compass 中检索索引(编号 1)信息

为什么根据其他工具,来自 aws rds 的 JSON 在 Docker 中格式错误运行?

如何比较 JSON 文档并返回与 Jackson 或 Gson 的差异?

使用非美国日期格式时,JsonConvert.DeserializeObject 无法将字符串转换为 DateTime

在 JavaScript 中从 Json 数据中删除反斜杠

Django - 异常处理最佳实践和发送自定义错误消息