将 Jackson JsonNode
转换为 java 集合的正确方法是什么?
如果它是一个 json 字符串,我可以使用 ObjectMapper.readValue(String, TypeReference)
但对于 JsonNode
唯一的选项是 ObjectMapper.treeToValue(TreeNode, Class)
不会给出 ObjectMapper.convertValue(Object, JavaType)
类型 ---
因为它接受任何 POJO 进行转换而感觉不对。
还有另一种“正确”的方式还是其中之一?
原文由 kag0 发布,翻译遵循 CC BY-SA 4.0 许可协议
获取
ObjectReader
和ObjectMapper#readerFor(TypeReference)
使用TypeReference
描述你想要的类型集合。然后使用ObjectReader#readValue(JsonNode)
解析JsonNode
(大概是ArrayNode
)。例如,要从仅包含 JSON 字符串的 JSON 数组中获取
List<String>