我想使用以下结构从String.class反序列化json:
{"listName": [{"prop":"value"},{"prop":"value"}, ... ] }
到List<PropVo>
,其中PropVo包含String prop作为字段。
List<PropVo>
创建包装类是否存在仅反序列化到列表的选项?
答案 0 :(得分:1)
您可以使用类型引用将JSON转换为Map<String, List<PropVo>>
:
Map<String, List<PropVo>> m = objectMapper.readValue(string,
new TypeReference<Map<String, List<PropVo>>>() {});
答案 1 :(得分:0)
另一种方法是使用readTree
示例:
ObjectMapper om = new ObjectMapper();
JsonNode list = om.readTree(json).path("listName");
List<PropVo> result = Arrays.asList(om.treeToValue(list,PropVo[].class);