我想连接多个 Jackson 对象。我有两个像这样的 String 对象
{'Key1' : 'Value1' , 'Key2' : 'Value2'}
Run Code Online (Sandbox Code Playgroud)
和这个
{'Key3' : 'Value3' , 'Key4' : 'Value4'}
Run Code Online (Sandbox Code Playgroud)
结果必须是
{'Key1' : 'Value1' , 'Key2' : 'Value2' , 'Key3' : 'Value3' , 'Key4' : 'Value4'}
Run Code Online (Sandbox Code Playgroud)
我怎样才能在Java中做到这一点?
这可以通过 Jackson 将每个解析String为ObjectNode(基本上是 JSON 的树表示)并与该setAll方法连接来实现。像这样的东西:
String json1 = "{\"Key1\": \"Value1\", \"Key2\": \"Value2\"}";
String json2 = "{\"Key3\": \"Value3\", \"Key4\": \"Value4\"}";
ObjectMapper mapper = new ObjectMapper();
ObjectNode node1 = (ObjectNode) mapper.readTree(json1);
ObjectNode node2 = (ObjectNode) mapper.readTree(json2);
JsonNode merged = node1.setAll(node2);
System.out.println(mapper.writeValueAsString(merged));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4235 次 |
| 最近记录: |