Link JsonNode 数组到 ArrayNode
Link array of JsonNodes to ArrayNode
我有一个 ArrayNode
看起来像这样:
[{
"A": "a",
"B": "b",
"C": "c"
}]
我想手动添加一个 JsonNode
的数组:
[{
"A": "a",
"B": "b",
"C": "c",
"D": [{
"D": "d",
"e": "e"
}]
}]
我正在考虑做这样的事情:
final ObjectNode jsonNode = nodeFactory.objectNode();
jsonNode.set(name) // name == "D", but method prototype is set(string, JsonNode)
arrayNode.add(jsonNode);
问题是 set
方法必须将 JsonNode
作为第二个参数。我只想创建 "D" 键以便此后 link 其他 JsonNodes。我错过了什么?
在将值推送到 ObjectNode
之前,您需要创建成员节点。它只是将 keys/values 保留在 Map
幕后。
ObjectNode node = nodeFactory.objectNode();
node.set("D", buildArrayNode());
...
private ArrayNode buildArrayNode() {
// build your node here
ArrayNode arrayNode = nodeFactory.arrayNode();
arrayNode.add(...);
}
我有一个 ArrayNode
看起来像这样:
[{
"A": "a",
"B": "b",
"C": "c"
}]
我想手动添加一个 JsonNode
的数组:
[{
"A": "a",
"B": "b",
"C": "c",
"D": [{
"D": "d",
"e": "e"
}]
}]
我正在考虑做这样的事情:
final ObjectNode jsonNode = nodeFactory.objectNode();
jsonNode.set(name) // name == "D", but method prototype is set(string, JsonNode)
arrayNode.add(jsonNode);
问题是 set
方法必须将 JsonNode
作为第二个参数。我只想创建 "D" 键以便此后 link 其他 JsonNodes。我错过了什么?
在将值推送到 ObjectNode
之前,您需要创建成员节点。它只是将 keys/values 保留在 Map
幕后。
ObjectNode node = nodeFactory.objectNode();
node.set("D", buildArrayNode());
...
private ArrayNode buildArrayNode() {
// build your node here
ArrayNode arrayNode = nodeFactory.arrayNode();
arrayNode.add(...);
}