gpt4 book ai didi

java - 使用 Jackson 将数组元素添加到 JSON

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:43:26 25 4
gpt4 key购买 nike

我有一个看起来像这样的 JSON

[
{
"itemLabel":"Social Media",
"itemValue":90
},
{
"itemLabel":"Blogs",
"itemValue":30
},
{
"itemLabel":"Text Messaging",
"itemValue":60
},
{
"itemLabel":"Email",
"itemValue":90
},
]

我想将所有这些对象放入一个数组中,以便在我的代码中更轻松地对其进行操作。因此我想做类似的事情

[
{
"data": [
{
"itemLabel": "Social Media",
"itemValue": 90
},
{
"itemLabel": "Blogs",
"itemValue": 30
},
{
"itemLabel": "Text Messaging",
"itemValue": 60
},
{
"itemLabel": "Email",
"itemValue": 90
}
]
}
]

如何使用 Jackson 添加 data 数组元素?我主要使用 Jackson 进行读取,但没有进行太多写入。任何帮助将不胜感激。

最佳答案

我不完全确定您的意图,可能有更优雅的解决方案(使用 POJO 而不是 Collections 和 Jacksons JSON 表示),但我想这个示例会让您明白这一点。但是如果你有一些更复杂的处理,你可能想要编写自定义(反)序列化器或类似的东西。使用 Jackson 2.3.3 编写

ObjectMapper mapper = new ObjectMapper();
JsonNode parsedJson = mapper.readTree(json); //parse the String or do what you already are doing to deserialize the JSON
ArrayNode outerArray = mapper.createArrayNode(); //your outer array
ObjectNode outerObject = mapper.createObjectNode(); //the object with the "data" array
outerObject.putPOJO("data",parsedJson);
outerArray.add(outerObject);
System.out.println(outerArray.toString()); //just to confirm everything is working

关于java - 使用 Jackson 将数组元素添加到 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23249782/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com