好记性不如烂笔头。
运行项目的时候报错:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)。先说解决方法,在pom文件中加上以下代码:
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
</build>
分析:
首先看下我的项目结构见图一。
然后Maven编译一下见图二
可以很明显的发现编译文件中少了mapping下的xml文件,就是这个原因导致程序报错。在pom文件中加上文章开头的代码,再重新编译见图三。
mapping下的xml编译成功,此时执行程序就不报错了。
Maven项目示意图见图四
结论:
Maven编译项目的时候只会把src/main/java下所有的*.java和src/main/resources里的文件编译放入target/classes文件夹,所以位于src/main/java下的xml文件就被忽略了。此时只需要在项目的pom文件中加入resources,把src/main/java下所有的*.xml也编译放入target/classes然后启动项目就可以了。