杰克逊处理第三方java类型

时间:2017-07-25 22:53:04

标签: java json jackson

我提供了反序列化从JPA返回的实体列表的功能,但是从JPA返回的列表类型是DelegatingResultList,它没有默认构造函数。

该实现使用带有AOP的代理bean,我拦截扩展一组接口的接口以提供基本查询。

我可以通过检查我的方面来解决这个问题,如果对象类型是DelegatingResultList然后复制到ArrayList,但是我不想为我覆盖的每个方面做这个。

我使用默认输入设置为如下属性:

struct timespec

带有我的值包装器的序列化格式的json如下所示:

objectMapper.enableDefaultTyping(DefaultTyping.NON_FINAL, As.PROPERTY);

我已经阅读过有关使用mixins和自定义反序列化器的内容,但我尝试的所有内容似乎都无法正常工作。

我尝试过使用Mixin,但我没有引用ResultList属性,因为它没有保存在json中。更不用说它在尝试反序列化时甚至没有启动。

我尝试过使用自定义反序列化程序,但是在反序列化时,这一点从未启动过。如果你试图将类作为类型反序列化反序列化,那么我是否正确假设mixin和自定义反序列化器只会启动?

这当然是只读的,因为它是一个缓存的值。所以我打算转而使用Arraylist。我如何使用杰克逊实现这一目标?

0 个答案:

没有答案