Sha*_*her 21 java json jackson
我需要使用Jackson创建一个JSON字符串,如下所示.我知道类似的问题已在这里得到解答: 使用jackson创建一个json对象
但我期望的JSON字符串与上面的示例中的字符串略有不同.
如何仅使用Jackson在Java中构建以下格式化的JSON对象?此外,我不喜欢创建一个单独的POJO来实现这一目标.
预期产出:
{
"obj1": {
"name1": "val1",
"name2": "val2"
},
"obj2": {
"name3": "val3",
"name4": "val4"
},
"obj3": {
"name5": "val5",
"name6": "val6"
}
}
Run Code Online (Sandbox Code Playgroud)
Sac*_*141 50
试试这个:
ObjectMapper mapper = new ObjectMapper();
JsonNode rootNode = mapper.createObjectNode();
JsonNode childNode1 = mapper.createObjectNode();
((ObjectNode) childNode1).put("name1", "val1");
((ObjectNode) childNode1).put("name2", "val2");
((ObjectNode) rootNode).set("obj1", childNode1);
JsonNode childNode2 = mapper.createObjectNode();
((ObjectNode) childNode2).put("name3", "val3");
((ObjectNode) childNode2).put("name4", "val4");
((ObjectNode) rootNode).set("obj2", childNode2);
JsonNode childNode3 = mapper.createObjectNode();
((ObjectNode) childNode3).put("name5", "val5");
((ObjectNode) childNode3).put("name6", "val6");
((ObjectNode) rootNode).set("obj3", childNode3);
String jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(rootNode);
System.out.println(jsonString);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
46790 次 |
| 最近记录: |