我正在尝试增加ObjectMapper的重用,我正在考虑移动以下代码:
ObjectMapper mapper = new ObjectMapper();
SimpleModule module = new SimpleModule().addSerializer(WeirdStuff.class, new WeirdStuffToStringSerializer());
mapper.registerModule(module);
ObjectNode results = mapper.createObjectNode();
results.set("field1", mapper.valueToTree(myClass.getField1()));
results.set("field2", mapper.valueToTree(myClass.getField2()));
到共享的ObjectMapper
和ObjectWriter
,但很难找到使用ObjectReader和Writer的示例。看看JavaDocs我也找不到ObjectWriter等价于valueToTree
。
有没有办法用ObjectWriter创建ObjectNodes
?
答案 0 :(得分:1)
valueToTree
或convertValue
中不存在您在ObjectMapper
上找到的任何转换方法(例如ObjectWriter
,ObjectReader
等)因为它们需要序列化和反序列化功能。
要回答您从ObjectNode
创建ObjectWriter
的问题,答案是否定的。 ObjectWriter
用于序列化,并且JsonNode
用于反序列化。使用ObjectReader
,您可以通过获取NodeFactory
:
objectReader.getConfig().getNodeFactory().objectNode()