解决方法一
首先。如果你的spring集成mybatis项目报这个错,找不到配置文件资源,再同时你用的是Intellij,那么就往下看吧
解决方法
就是,使用这种配置方式!
放在resources目录下就可以了
。
本人的解决办法能解决问题但不是最优处理操作,以下为网络找到的大神解决办法,已验证正确性,二选一随大家选择,均可以解决问题
解决办法二
大神的解决办法如下:
这个问题整整纠结了我四个多小时,心好累啊。。。不废话。。。
背景:Spring整合Mybatis
报错:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
解释:就是说,你的Mapper接口,被Spring注入后,却无法正常的使用mapper.xml的sql;
这里的Spring注入后的意思是,你的接口已经成功的被扫描到,但是当Spring尝试注入一个代理(MyBatista实现)的实现类后,却无法正常使用。这里的可能发生的情况有如下几种;
- 接口已经被扫描到,但是代理对象没有找到,即使尝试注入,也是注入一个错误的对象(可能就是null)
- 接口已经被扫描到,代理对象找到了,也注入到接口上了,但是调用某个具体方法时,却无法使用(可能别的方法是正常的)
当然,我们不好说是那种情况,毕竟报错的结果是一样的,这里就提供几种排查方法:
- mapper接口和mapper.xml是否在同一个包(package)下?名字是否一样(仅后缀不同)?