hibernate对象在Jackson中序列化失败

2019-04-26  本文已影响0人  田文健

hibernate的实体对象是代理过的,应为有些懒加载过程,当用Jackson序列化时会失败,这时候可以在依赖中加入

<dependency>
            <groupId>com.fasterxml.jackson.datatype</groupId>
            <artifactId>jackson-datatype-hibernate5</artifactId>
            <version>2.9.8</version>
        </dependency>

如过是自定义的objectMapping,那么需要

ObjectMapper om = new ObjectMapper();
        om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
        om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);

        //解决hibernate代理对象无法序列化的问题
        om.registerModule(new Hibernate5Module());
上一篇下一篇

猜你喜欢

热点阅读