SpringBoot提示No serializer found for class org.apache.ibatis.executor.loader

Java技术 潘老师 2年前 (2021-12-24) 2812 ℃ (0) 扫码查看

今天在做自己的SpringBoot项目时,改完代码后登录突然发现报错如下:

巴拉巴拉一大堆,总之意思就是jackson对某些属性没法序列化,而之前数据都是一样的,也没出现这个问题,那是什么原因导致的?

产生原因:

产生这个问题的原因就是为了实现mybatis级联查询懒加载,添加了如下配置:

# MyBatis
mybatis:
  # 配置全局懒加载
  configuration:
    lazy-loading-enabled: true
    aggressive-lazy-loading: false

然后就出现了如上问题。

解决办法:

1)方法1:这个解决办法很简单,就是在application.yml中新增配置如下:

spring:
  jackson:
    serialization:
      FAIL_ON_EMPTY_BEANS: false

如果是application.properties文件就新增如下:

spring.jackson.serialization.FAIL_ON_EMPTY_BEANS=false

然后再去运行,发现问题就解决了。
2)方法2:就是在相关实体类上加上如下注解即可:

@JsonIgnoreProperties(value = { "handler" })

但总体而言,潘老师还是认为第一种方法更好,更简洁方便!


版权声明:本站文章,如无说明,均为本站原创,转载请注明文章来源。如有侵权,请联系博主删除。
本文链接:https://www.panziye.com/java/4076.html
喜欢 (2)
请潘老师喝杯Coffee吧!】
分享 (0)
用户头像
发表我的评论
取消评论
表情 贴图 签到 代码

Hi,您需要填写昵称和邮箱!

  • 昵称【必填】
  • 邮箱【必填】
  • 网址【可选】