mybatis常见报错!!
Posted 安然相对不惊飞
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis常见报错!!相关的知识,希望对你有一定的参考价值。
在写好代码的时候,编译正常但是在调用接口的时候却报 Invalid bound statement (not found):错误,这个错误有以下几种可能
1.检查xml文件所在package名称是否和Mapper interface所在的包名
<mapper namespace="me.tspace.pm.dao.UserDao">
mapper的namespace写的不对!!!注意系修改。
2.UserDao的方法在UserDao.xml中没有,然后执行UserDao的方法会报此
3. UserDao的方法返回值是List<User>,而select元素没有正确配置ResultMap,或者只配置ResultType!
4. 如果你确认没有以上问题,请任意修改下对应的xml文件,比如删除一个空行,保存.问题解决
5.看下mapper的XML配置路径是否正确
重点来了!!!
当以上几种可能都正确的情况下,看一看编译器的target目录下编译好的的class文件,看一看mapper(按照自己起的名字找)文件夹下是否有xxxmapper.XMl文件加载进来
在以上五种情况都满足的情况下应该就是这个问题了(IDE不加载.XML文件)
解决办法:
在你IDE的pom文件中添加以下代码:
<build>
<resources>
<!-- mapper.xml文件在java目录下 -->
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<!-- mapper.xml文件在resources目录下-->
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
</build>
这时找到maven依赖将下面代码放进build节点中(如果pom文件中有build节点就可以省去build节点)
以上是关于mybatis常见报错!!的主要内容,如果未能解决你的问题,请参考以下文章