通过推断/嵌入对象类型在Java中反序列化JSON

时间:2015-07-08 23:36:41

标签: java json jackson

我正在使用Jackson将Map<String, Object>序列化为JSON。

稍后当我反序列化它时,所有非原始类型的对象都会转换为LinkedHashMap而不是它们最初所属的类。

有没有办法将JSON反序列化为一个映射,以便嵌套对象的类型正确?

1 个答案:

答案 0 :(得分:0)

使用constructCollectionType Typefactory与ArrayList作为CollectionClass&amp;您的POJO类作为第二个参数,并使用ObjectMapper读取“List”值。像这样:

List<T> list;
ObjectMapper om = new ObjectMapper();
TypeFactory t = TypeFactory.defaultInstance();
list = om.readValue(json, t.constructCollectionType(ArrayList.class,POJO_clazz));

希望这有帮助!