前排提醒注意文章時限!本文寫于2024.1.9
問題描述:
在springboot中使用Mybatis出現(xiàn)Invalid value type for attribute 'factoryBeanObjectType': java.lang.String
問題分析:
通過多方查詢,一般為Spring Framework(Springboot)、Mybatis-Spring、MyBatis三者版本管理沖突
相關版本兼容性請查詢:?mybatis-spring官網https://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默認或推薦的最新版本依賴
深究問題:
在查詢版本兼容性文件后,認為不應該是版本兼容問題,但依舊出現(xiàn)使用mybatis就出現(xiàn)Invalid value type for attribute 'factoryBeanObjectType': java.lang.String此類錯誤。
嘗試新建項目,排除變量,鎖定問題。
在整個項目只有借助Mybatis操作數(shù)據(jù)庫這一功能后,發(fā)現(xiàn)只要一使用@Mapper和@MapperScan等由Mybatis-Spring依賴中提供的注解,項目就會出現(xiàn)此類錯誤,鎖定問題出現(xiàn)在Mybatis-Spring依賴。并在調整使用基礎mybatis或mybatisplus依賴后錯誤消失。
發(fā)現(xiàn)原因:
Mybatis-Spring:3.0.2此版本存在不穩(wěn)定性問題,與部分版本Spring Framework組件存在不兼容,但難以鎖定是哪些組件之間存在問題(查詢雙方官網似乎并沒有出現(xiàn)相關錯誤公告)
解決:
手動配置依賴使用3.0.3版本Mybatis-Spring,或降級。
注意:
在本文寫作時間,部分版本的IDEA中maven提示的Mybatis-Spring最新版本為3.0.2。文章來源:http://www.zghlxwxcb.cn/news/detail-830326.html
結論:
依賴盲目使用IDEA推薦的最新版,可能會出現(xiàn)類似問題。文章來源地址http://www.zghlxwxcb.cn/news/detail-830326.html
到了這里,關于解決使用Mybatis出現(xiàn)Invalid value type for attribute ‘factoryBeanObjectType‘: java.lang.String的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!