Loading

Jackson中转换JsonNode(ArrayNode)到Java中的List对象

记一下,因为不常用,总是忘。

参考资料:
https://stackoverflow.com/questions/48287292/how-do-you-convert-a-jackson-jsonnode-to-a-list-of-some-user-defined-object

{
  "objects":"that",
  "I":"dont care about",
  "objectsiwant":[{object1, object2,...}]
}

使用readerFor或readerForListOf


ObjectMapper mapper = new ObjectMapper();
JsonNode rootNode = mapper.readTree(json);
JsonNode internalNode = rootNode.path("objectsiwant");

// ----------------

List<MyPojo> myPojoList = mapper.readerFor(new TypeReference<List<MyPojo>>(){}).readValue(internalNode);

// 或者

List<MyPojo> myPojoList = mapper.readerForListOf(MyPojo.class).readValue(internalNode);
posted @ 2021-12-03 14:52  IMBennie  阅读(5783)  评论(0编辑  收藏  举报