若依框架使用MyBatis-Plus中的baseMapper的方法报错Invalid bound statement (not found):

复制代码
Invalid bound statement (not found): com.ruoyi.system.mapper.hc.HcOrderMapper.selectList 解决方法
java 复制代码
  MybatisSqlSessionFactoryBean sessionFactory = new MybatisSqlSessionFactoryBean();

使用 MybatisSqlSessionFactoryBean 而非 SqlSessionFactoryBean 的原因

**MyBatis-Plus 特性:MybatisSqlSessionFactoryBean 是 MyBatis-Plus 提供的一个扩展类,**它继承自 SqlSessionFactoryBean,但是支持 MyBatis-Plus 提供的额外功能,比如自动注入的 BaseMapper、Wrapper 查询等功能。

SqlSessionFactoryBean 的局限性:如果使用 SqlSessionFactoryBean,它仅支持原生 MyBatis,而不能使用 MyBatis-Plus 的功能。因此,BaseMapper 中的 CRUD 方法(如 selectById、insert 等)无法正常工作,因为这些是 MyBatis-Plus 提供的增强功能,只有 MybatisSqlSessionFactoryBean 才能识别和处理这些功能。

类加载和代理问题:SqlSessionFactoryBean 并不知道 MyBatis-Plus 的增强功能,因此在执行与 MyBatis-Plus 相关的操作时,可能会遇到运行时错误或无法找到对应的方法。而 MybatisSqlSessionFactoryBean 处理了这些代理问题,确保 MyBatis-Plus 的增强功能可以正常工作。

因此,如果想要使用 MyBatis-Plus 提供的 BaseMapper 的方法,必须使用 MybatisSqlSessionFactoryBean,否则会遇到无法调用这些方法的问题。

特别鸣谢:潘玉康大佬

相关推荐
敲个大西瓜4 天前
mybatis拦截器插件实现数据库字段加解密
mybatis
武子康4 天前
Java-28 深入浅出 Spring 实现简易Ioc-04 在上节的业务下手动实现AOP
java·后端·mybatis
一条泥憨鱼5 天前
苍穹外卖【day6|微信登录与商品浏览功能】
后端·mybatis·苍穹外卖
vx-Biye_Design5 天前
springboot安阳地区研学旅游服务小程序-计算机毕业设计源码12785
java·vue.js·windows·spring boot·tomcat·maven·mybatis
摇滚侠5 天前
MyBatis+Spring+SpringMVC SSM 整合 179-185
java·spring·mybatis
摇滚侠5 天前
MyBatis+Spring+SpringMVC SSM ContextLoaderListener 177-178
java·spring·mybatis
Spring小子5 天前
【Spring Boot + Vue + DeepSeek】从零打造一个AI驱动的智能健康分析系统
java·spring boot·mybatis
武子康5 天前
Java-27 深入浅出 Spring - 实现简易Ioc-03 在上节的业务下手动实现IoC 从 XML 配置到 BeanFactory 反射注入
java·后端·mybatis
柏舟飞流5 天前
Spring Boot 进阶实战:整合 MyBatis、Redis、JWT,搭一个更像真实项目的后端服务
spring boot·redis·mybatis