如何在Jackson中将Java对象放到ObjectNode中?

3ks5zfa0  于 2022-11-23  发布在  Java
关注(0)|答案(2)|浏览(246)

我正在用编程的方式编写ObjectNode,并且我正在用put(String propertyName...)方法填充它的字段。现在我想添加一个子对象,它已经是Java对象的形式了。怎么做?
我没有put(String propertyName, Object value)方法,那么该怎么办呢?
我能够创造

JsonNode node = mapper.valueToTree(myObject);

但我也没有put(String propertyName, JsonNode node)方法。
如何完成?

n53p2ov0

n53p2ov01#

尝试使用set(String, JsonNode)而不是put。示例如下:

Car car = new Car();
car.setName("My car");
car.setYear("2022");

ObjectMapper mapper = new ObjectMapper();

ObjectNode baseNode = mapper.createObjectNode();
ObjectNode carNode = mapper.valueToTree(car);

baseNode.put("hello", "world");
baseNode.set("car", carNode);

System.out.println(baseNode.toPrettyString());
uqcuzwp8

uqcuzwp82#

可以用set(String propertyName, JsonNode node)方法。

相关问题