在做Spring和mybaits的集成时候,遇到了dao层没法和dao接口有效绑定的bug,明明可以得到dao接口创建的对象,但是却无法执行dao的任何mysql方法(Insert,Delete…):
可能有以下情况:
1.dao路径出问题,mapper标签的namespace值书写错误之类的。。。该类问题读者自行检查。
2.pom.xml文件中没有加入《resource》<include包含标签,maven进行编译的时候,仅仅将resource目录下的xml配置文件输出到类路径下面,而在java内的其他配置文件没有输出到classes类路径下,因此报错Invalid bound statement
解决方法:
在pom配置文件中的《build》标签下,加入以下代码:
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
然后在使用maven清楚原先target文件:
再此进行compile编译操作,即可发现原来类路径中java目录的xml文件也会被输出到classes类路径下,即可解决问题: