
mybatis-plus通用mapper调用报错:Invalid bound statement
发布日期:2021-05-08 12:13:14
浏览次数:16
分类:精选文章
本文共 1145 字,大约阅读时间需要 3 分钟。
在使用Spring Boot整合MyBatis-Plus时,可能会遇到以下问题:调用自定义方法正常,但调用BaseMapper中自带的方法却报错。错误信息如“Invalid bound statement (not found): cn.rkang.enterprise.mapper.EmployeeInfoMapper.selectOne”通常表明MyBatis尝试调用一个未能找到映射的SQL语句。
常见原因分析
XML配置文件缺失或错误:如果使用MyBatis的XML配置文件,可能缺少了对应的SQL语句映射,或者配置文件路径错误。
注解驱动配置问题:使用MyBatis-Plus的注解驱动时,可能未正确配置@Mapper
注解,或者扫描包路径错误。
版本兼容性问题:不同版本的MyBatis或MyBatis-Plus可能对某些配置有不同要求,需确认当前版本与其他依赖项的兼容性。
MappedStatement组装失败:MappedStatement
未能正确组装,可能是因为resolveMappedStatement
未能找到对应的SQL语句。
解决方法
用户提到将MyBatis的SQLSessionFactory替换为MyBatis-Plus的MybatisSqlSessionFactoryBean
,并添加了配置类MybatisPlusConfig
。配置类中设置了数据库连接、脚本语言、数据库字段命名等参数,并解决了MappedStatement
的问题。
以下是优化后的解决方案:
检查Mapper接口配置:
- 确保Mapper接口使用了
@Mapper
和@Select
注解,并且每个方法都有对应的SQL语句映射。 - 如果使用注解驱动,确保扫描包路径正确,避免遗漏任何Mapper接口。
配置类优化:
- 确保
MybatisPlusConfig
类正确配置了所有必要的插件和设置,例如数据库IdProvider、脚本语言驱动等。 - 检查数据库字段命名设置,避免因为字段命名不一致导致MyBatis无法正确找到映射。
数据库连接验证:
- 确认数据库连接和数据源配置正确,避免因为连接问题导致无法加载SQL语句。
MyBatis-Plus配置检查:
- 确认
MybatisSqlSessionFactoryBean
配置正确,包括数据源、VFS类、配置文件路径等。 - 检查
resolveMappedStatement
方法是否能正确找到对应的SQL语句,必要时可以添加日志或调试信息来跟踪过程。
版本兼容性检查:
- 确认MyBatis和MyBatis-Plus的版本是否与其他依赖项兼容,必要时升级到最新版本以修复潜在问题。
通过以上步骤,用户应该能够定位并解决问题,确保所有SQL语句都能被正确组装和执行。
发表评论
最新留言
能坚持,总会有不一样的收获!
[***.219.124.196]2025年04月13日 06时12分48秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
配置jdk的环境变量
2019-03-12
echo命令的颜色及同行显示控制
2019-03-12
CentOS7利用Systemd添加用户自定义系统服务
2019-03-12
懒人HTML5笔记-1
2019-03-12
两台服务器http方式共享yum软件仓库
2019-03-12
团队背包(team)
2019-03-12
spring tx:advice 和 aop:config 配置事务
2019-03-12
修改layui的后台模板的左侧导航栏可以伸缩
2019-03-12
ThreadLocal源码分析解密
2019-03-12
编译android源代码(aosp)
2019-03-12
Java流程控制语句
2019-03-12
wincc实现手机APP远程监控
2019-03-12
3.6.X版本的OSG无法打开osgShadow/ShadowVolume的问题
2019-03-12
LSM树
2019-03-12
vue手写 头部 滑动按钮 点击查看更多,可折叠
2019-03-12
IDEA快捷键CTRL+SHIFT+F无效
2019-03-12
IDEA 找不到 Persistence窗口解决办法
2019-03-12