对于这种错误,一般在于mapper接口与xml文件无法绑定。
解决方案:
1.检查xml文件名是否与mapper接口名一致。
2.检查xml文件中namespace是否与mapper接口的全类名一致。(按住ctrl点击能跳转就没问题)
3.是否在主启动类上标注了@MapperScan(“mapper接口所在包的全包名”)或在mapper接口类上标注了@Mapper(两者不能同时使用)
4.检查mapper接口方法名是否与xml文件中id属性一致。
5.如果打包时xml文件没有自动复制到class输出目录的mapper类包下,则需要在pom文件中添加mybatis加载配置文件的配置。
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
</build>
6.clean掉target,重新编译。
7.在配置文件中声明xml文件的路径。