当前位置: 首页 > 面试题库 >

使用Jackson合并两个JSON文档

赖诚
2023-03-14
问题内容

是否可以将两个JSON文档与Jackson JSON库合并?我基本上是将Jackson映射器与简单的Java映射一起使用。

我尝试搜索Google和Jackson的文档,但找不到任何东西。


问题答案:

一种方法是这样使用ObjectReader

MyBean defaults = objectMapper.readValue(defaultJson, MyBean.class);
ObjectReader updater = objectMapper.readerForUpdating(defaults);
MyBean merged = updater.readValue(overridesJson);

它将合并来自两个来源的数据。这只会进行浅表复制,即不会对包含的对象进行递归合并。

否则,您可能只需要将JSON读取为树(JsonNode),在内容上循环并手动合并即可。无论如何,这通常都是有道理的,因为合并规则并非微不足道,每个人对于合并应该如何工作都有自己的想法。

编辑 :(2017年4月3日)

根据@Fernando Correia的评论,实际上即将发布的Jackson
2.9(将于2017年4月或2017年5月发布)中增加了一个新功能,该功能最终允许进行深度合并。



 类似资料:
  • 问题内容: 我有以下输入-2个json文件,一个是基础文件,第二个包含相同的属性,但值不同,我想合并这些对象。 例如: 第二个文件: 结果应该是这样的: 使用powershell可以做到吗? 问题答案: (请参见下面的更新) 结果: 您可能会考虑不覆盖左值: 在这种情况下,结果将是: 更新2019年11月16日 的参数已经被耗尽,分过和参数(遗憾的重大更改)。好消息是,对象合并的默认参数设置包含在

  • 问题内容: 我有两个json 第一个是 第二个是 我想合并它们并有一个像 有没有办法合并它们?如果需要在JSON中更改结构,对我来说也可以 谢谢。 问题答案: 像应该工作。 官方PHP文档中的 array_merge 官方PHP文档中的 json_decode 编辑: 尝试将第二个参数添加到json_decode。这样会将对象转换为关联数组。

  • 问题内容: 文件1具有5个字段ABCDE,其中字段A是整数 文件2具有3个字段AFG 文件1中的行数比文件2中的行数大得多(20 ^ 6到5000) 文件1中A的所有条目都出现在文件2中的A字段中 我喜欢按字段A合并两个文件并携带F和G 所需的输出是ABCDEFG 例 文件1 文件2 所需的输出 问题答案: $ awk ‘FNR==NR{a[$1]=$2 FS $3;next}{ print $0

  • 本文向大家介绍Linux使用join -a1来合并两个文件,包括了Linux使用join -a1来合并两个文件的使用技巧和注意事项,需要的朋友参考一下 要合并以下两个文件,一起合并在一起,合并到1.txt中 合并的后的1.txt Jerry 20 man Alice 30 woman David 40 上面的文件特点是有相同的,则合并,第二列缺少内容的。这个时候使用join -a1 1.txt 2

  • 我有两个xml文件,需要使用XSLT将它们合并为一个。 第一个XML是(原始的): 第二个XML(更新数据)如下所示: 所需的合并结果-使用第二个XML更新第一个: 我已经搜索了stackoverflow,但仍然找不到答案。谢谢你的帮助。

  • 我正在尝试通过字符串将根数据合并为一个,但无法这样做。请帮助。