You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何创建空JsonNode?为父JSON节点设置空节点值失败求助

解决Jackson中无法实例化JsonNode设置空节点的问题

因为JsonNode是抽象类,其构造方法为受保护,所以不能直接用new JsonNode()实例化。根据你需要的"空节点"类型,有以下几种可行方案:

设置JSON null值节点

如果需要将fieldName的值设为JSON中的null,可以通过ObjectMapper的nullNode()方法获取对应节点:

ObjectMapper mapper = new ObjectMapper();
JsonNode jsonNode = externalSource();
((ObjectNode) jsonNode).set("fieldName", mapper.nullNode());

设置空Object节点({})

如果需要设置一个空的JSON对象作为值,可创建ObjectNode实例:

// 方式1:通过已有ObjectNode的objectNode()方法创建
JsonNode jsonNode = externalSource();
((ObjectNode) jsonNode).set("fieldName", ((ObjectNode) jsonNode).objectNode());

// 方式2:通过ObjectMapper创建
ObjectMapper mapper = new ObjectMapper();
JsonNode jsonNode = externalSource();
((ObjectNode) jsonNode).set("fieldName", mapper.createObjectNode());

设置空Array节点([])

如果需要设置一个空的JSON数组作为值,可创建ArrayNode实例:

ObjectMapper mapper = new ObjectMapper();
JsonNode jsonNode = externalSource();
((ObjectNode) jsonNode).set("fieldName", mapper.createArrayNode());

内容的提问来源于stack exchange,提问作者Mooncrater

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 01:31:24