若依框架使用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,否则会遇到无法调用这些方法的问题。

特别鸣谢:潘玉康大佬

相关推荐
学编程的小鬼21 小时前
MyBatis中如何实现数据封装
数据库·mybatis
Lucky_Turtle1 天前
【Mybatis】单独测试
mybatis
Zz_waiting.1 天前
利用 MyBatis 操作数据库完善案例
数据库·mybatis·案例demo
学IT的周星星3 天前
《MyBatis变形记:当SQL遇上“智能管家“》
数据库·sql·mybatis
期待のcode3 天前
MyBatis框架—延迟加载与多级缓存
java·数据库·后端·缓存·mybatis
龙茶清欢3 天前
具有实际开发参考意义的 MyBatis-Plus BaseEntity 基类示例
java·spring boot·spring cloud·mybatis
计算机学姐3 天前
基于微信小程序的扶贫助农系统【2026最新】
java·vue.js·spring boot·mysql·微信小程序·小程序·mybatis
Roye_ack4 天前
【项目实战 Day5】springboot + vue 苍穹外卖系统(Redis + 店铺经营状态模块 完结)
java·spring boot·redis·学习·mybatis
祈祷苍天赐我java之术4 天前
Redis 缓存三大坑:击穿、穿透、雪崩的解析与解决
redis·缓存·mybatis
咖啡Beans4 天前
了解Mybatis拦截器
java·spring boot·mybatis