org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.example.xx.mapper.xx.xx
关于这个报错,我在当初学习SpringBoot集成Mybatis的时候遇到过几次,主要是在利用Mybatis逆向工程实现生成数据持久层和.xml映射文件的时候报的错,其原因是Springboot找不到生成的映射文件,这是我们使用Mybatis逆向工程中要注意的一点。
解决方法:
在pom.xml文件中加上如下语句
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
上诉标签告诉Springboot,资源文件要去src/main/java下面的找,具体为所有后缀为xml的文件。此时重新编译项目就能看到在target文件夹中项目所在文件夹的mapper文件夹里了。
但是此时还有一个地方需要注意:我们手动改变了SB对资源文件目录的查找,若是后面执行了clean命令,再次编译的时候就会发现原来资源目录中的application.properties在target中生成的文件会消失,所以我们还得再加上下面的语句:
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.*</include>
</includes>
</resource>
上面代码手动指定application.properties也作为资源/配置文件的一部分
整体案例可看如下博客