【Spring Boot|MyBatis】解决MyBatis报错:无效的绑定语句
错误的原因是Maven未将Mapper的xml复制到类路径下,导致MyBatis找不到Mapper接口对应的xml文件。
有两种方法
- 第一种
把Mapper接口与Mapper.xml放在同一个包下
- 第二种
在 pom.xml 中添添加如下配置
<dependencies>
...
</dependencies>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.json</include>
<include>**/*.ftl</include>
</includes>
</resource>
</resources>
</build>
如果以上两种方法还是解决不了错误的话,那么错误的原因有以下几种可能
- 命名空间与Mapper接口映射出错
- Mapper接口方法与Mapper的XML文件的方法id映射出错
- Intellij IDEA最可能出现的错误,如果xml是放在resources目录下,在创建resources的子目录时请注意
错误示范↓
正确示范