解决使用Mybatis出现Invalid value type for attribute ‘factoryBeanObjectType‘: java.lang.String

前排提醒注意文章时限!本文写于2024.1.9

问题描述:

在springboot中使用Mybatis出现Invalid value type for attribute 'factoryBeanObjectType': java.lang.String

问题分析:

通过多方查询,一般为Spring Framework(Springboot)、Mybatis-Spring、MyBatis三者版本管理冲突

相关版本兼容性请查询: mybatis-spring官网icon-default.png?t=N7T8https://mybatis.org/spring/zh/index.html

我错误使用的版本为:

Springboot:3.2.1

Spring Framework:6.1.2

Mybatis-Spring:3.0.2

MyBatis:3.5.14

皆为我的IDEA默认或推荐的最新版本依赖

深究问题:

在查询版本兼容性文件后,认为不应该是版本兼容问题,但依旧出现使用mybatis就出现Invalid value type for attribute 'factoryBeanObjectType': java.lang.String此类错误。

尝试新建项目,排除变量,锁定问题。

在整个项目只有借助Mybatis操作数据库这一功能后,发现只要一使用@Mapper和@MapperScan等由Mybatis-Spring依赖中提供的注解,项目就会出现此类错误,锁定问题出现在Mybatis-Spring依赖。并在调整使用基础mybatis或mybatisplus依赖后错误消失。

发现原因

Mybatis-Spring:3.0.2此版本存在不稳定性问题,与部分版本Spring Framework组件存在不兼容,但难以锁定是哪些组件之间存在问题(查询双方官网似乎并没有出现相关错误公告)

解决

手动配置依赖使用3.0.3版本Mybatis-Spring,或降级。

注意:

在本文写作时间,部分版本的IDEA中maven提示的Mybatis-Spring最新版本为3.0.2。

结论:

依赖盲目使用IDEA推荐的最新版,可能会出现类似问题。

  • 13
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值