其实这种错原因有很多种,基本就是配置不对的原因,网上不外乎以下几种情况:
1.检查xml文件的namespace是否正确
2.Mapper.java的方法在Mapper.xml中没有,然后执行Mapper的方法会报此
3. Mapper.java的方法返回值是List,而select元素没有正确配置ResultMap,或者只配置ResultType
4. 如果你确认没有以上问题,请任意修改下对应的xml文件,比如删除一个空行,保存.问题解决
5.看下mapper的XML配置路径是否正确
假如以上你都确定没有问题了,那么你可以检查一下编译出来的target目录下,是否有你的mapper.xml文件,我就是这样,xml文件目录放在了java包下,maven配置里打包的时候,没有把xml打包进去,导致了运行时,找不到对应的xml,也会报标题这样的错。
解决方案:
在pom文件的build标签下增加:
<!--将xml文件也打入target包里 --> <resources> <resource> <directory>src/main/resources</directory> <includes> <include>*</include> <include>*/*</include> </includes> <filtering>true</filtering> </resource> <!--mybatis 接口xml编译到源码下面 --> <resource> <directory>src/main/java</directory> <includes> <include>**/**/**/**/**/*.xml</include> </includes> </resource> </resources>