6
添加屬性,以JSON所以我jsonStr
是這個使用傑克遜
[
{
"data": [
{
"itemLabel": "Social Media",
"itemValue": 90
},
{
"itemLabel": "Blogs",
"itemValue": 30
},
{
"itemLabel": "Text Messaging",
"itemValue": 60
},
{
"itemLabel": "Email",
"itemValue": 90
}
]
}
]
我想data
陣列喜歡這裏這
[
{
"data": [
{
"itemLabel": "Social Media",
"itemValue": 90
},
{
"itemLabel": "Blogs",
"itemValue": 30
},
{
"itemLabel": "Text Messaging",
"itemValue": 60
},
{
"itemLabel": "Email",
"itemValue": 90
}
],
"label": "2007"
}
]
閱讀它說,做這樣的事情
後添加屬性ObjectMapper mapper = new ObjectMapper();
JsonNode jsonNode = mapper.readTree(jsonStr);
((ObjectNode) jsonNode).put("label", "2007");
String json = mapper.writeValueAsString(jsonNode);
return json;
問題是我一直收到一個錯誤
java.lang.ClassCastException: com.fasterxml.jackson.databind.node.ArrayNode cannot be cast to com.fasterxml.jackson.databind.node.ObjectNode
我在做什麼錯?我目前正在使用Jackson-core 2.2.2
您的頂級節點代表一個數組,而不是一個對象。在添加屬性之前,您需要更深入一個槓桿。 – Henry
這清除了爲什麼我得到的錯誤,但你可以詳細闡述一點?我不知道如何去更深入。我看到我需要ArrayNode? – cYn