2021-12-10 Json序列化出现 disable SerializationFeature.FAIL_ON_EMPTY_BEANS 问题

Json序列化出现 disable SerializationFeature.FAIL_ON_EMPTY_BEANS 问题

disable SerializationFeature.FAIL_ON_EMPTY_BEANS 问题

查询了一些文章有两种解决方案:

  1. 在每个需要使用 Jackson 序列化的对象上添加 @JsonIgnoreProperties(value = { “hibernateLazyInitializer”, “handler” }) 注解
    在这里插入图片描述

  2. 在全局的 ObjectMapper 设置关闭 SerializationFeature.FAIL_ON_EMPTY_BEANS
    在这里插入图片描述

总结

  • 第一种:使用注解的方式要再每一个返回给前端需要使用 jackson 序列化对象上添加注解,比较繁琐
  • 第二种:设置 spring 容器中的对象关闭 SerializationFeature.FAIL_ON_EMPTY_BEANS,方便,但手动 new ObjectMapper 时需要重新设置
  • 两种方式各有好处,可以自行选择

第三种方法

后来又在 AxiosResult 对象添加了 get 方法,发现也能解决这个问题,可以不用使用前两种方式,查看下 SpringMVC 返回给前端的对象是否提供 get 方法

应该是 jackson 序列化如果没有提供 get 方法就会报 SerializationFeature.FAIL_ON_EMPTY_BEANS 这个问题(不能通过 get 方法获取成员变量)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值