项目场景:

老应用版本升级mybatis换到mybatis-plus

主要思路

两方面,bean注入和依赖冲突方面


问题描述

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): xxx.xxx.mapper.xxxMapper.selectList

场景:

添加数据的时候去除一些不存在字段去查找数据库字段,整体jar包是个公共的其他项目都没有问题单独就那一个出问题,百度之后有说版本的、还有说什么缺SqlSessionFactory的


原因分析

我说下我思路:多项目共用同一个,单独一个出问题说明不是公共问题,只能说明老项目遗留的代码会导致bean注入不了或者说是自动注入后对应不上。

老项目多数据源切换的config配置的是org.mybatis.spring下的SqlSessionFactoryBean,而在切换到mybatis-plus后需要将原有的SqlSessionFactoryBean切换成com.baomidou.mybatisplus.extension.spring下的MybatisSqlSessionFactoryBean。


解决方案:

原始
SqlSessionFactoryBean factoryBean = new SqlSessionFactoryBean();
替换后
MybatisSqlSessionFactoryBean factoryBean = new MybatisSqlSessionFactoryBean();
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐