java使用jackson向jsonobject添加键值对
我只需要从一个json节点复制元数据并将其添加到另一个json节点。我的问题是
ObjectNode.put("key":"value")
覆盖现有数据,但我需要添加它们
例如:
{"metadata":{ "foo":1, "boo":2}} merged with {"metadata": {"ba":7}}
应该是
{"metadata":{"foo":1, "boo":2,"ba":7}}
应该很简单,但我不明白:( 因此,任何帮助都将不胜感激
# 1 楼答案
你可以通过几种方式来实现
首先,使用Jackson API;让我们调用
node
您想要修改的节点,newNode
您想要合并的节点:第二,(抱歉:自我提升)你的目标JSON可以用作JSON Merge Patch;我开发的一个库使用了Jackson(注:2.2.x,而不是1.9.x),has support for it:
# 2 楼答案
要将键值对添加到json对象中,只需获取一个映射并将键值条目放入其中。现在,您应该使用JSONER对象。通过使用jsoner的serialize方法,您可以直接将映射添加到json