将JsonNode转换成POJO
这似乎有点不正常,但我在寻找一个有效的方式来变换/映射JsonNode
成POJO
。
我将模型的一些信息存储在json文件中,并且我必须支持模型的几个版本。
我要做的是将json文件加载到JsonNode的内存中,应用一些版本控制策略以使其与我的Model的最新版本匹配。
ObjectMapper mapper = new ObjectMapper(); BufferedReader fileReader = new BufferedReader(new FileReader(projPath));
JsonNode rootNode = mapper.readTree(fileReader);
//Upgrade our file in memory
applyVersioningStrategy(rootNode);
ProjectModel project = mapJsonNodeToProject(rootNode);
除非有更快的方法,否则我可能最终将手动将其JsonNodes
应用于模型
回答:
在Jackson 2.4中,可以进行如下转换:
MyClass newJsonNode = jsonObjectMapper.treeToValue(someJsonNode, MyClass.class);
jsonObjectMapper
杰克逊在哪儿ObjectMapper
?
在旧版的Jackson中,
MyClass newJsonNode = jsonObjectMapper.readValue(someJsonNode, MyClass.class);
以上是 将JsonNode转换成POJO 的全部内容, 来源链接: utcz.com/qa/410778.html