今天遇到mybatis-puls的報錯Caused by: org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
排查方法如下:
1、mapper接口和mapper.xml是否在同一個包(package)下?名字是否一樣(僅后綴不同)?
2、mapper.xml的命名空間(namespace)是否跟mapper接口的包名一致?
3、接口的方法名,與xml中的一條sql標簽的id一致
4、配置文件中的配置
#mybatis
mybatis-plus:
mapper-locations: classpath:**/*Mapper.xml
5、如果你的項目是maven項目,請你在編譯后,到接口所在目錄看一看,很有可能是沒有生產對應的xml文件,因為maven默認是不編譯的,因此,你需要在你的pom.xml的<build></build>里面,加這么一段:
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
我的問題就出在第5部,因為之前沒怎么接觸maven項目,所以新建項目后並沒有在pom中加上編譯的配置,導致一直找不到綁定失敗。今把問題記錄方便日后好進行回憶查看