新版IntelliJ IDEA中Mybatis报Invalid bound statement (not found)错误解决办法
由于新版的IntelliJ IDEA不再编译source folder下的xml文件,而我们平时使用mybatis时,习惯于将*Mapper.xml文件放在与dao层、service层平级的src目录下。这就导致ItelliJ IDEA不会变异这些xml文件夹,从而导致Invalid bound statement (not found)的发生。
解决方法如下:
1、将*Mapper.xml文件夹放在resource文件夹下,但是这种方式会打破原来的代码结构,如果团队中有人用eclipse有人用IntelliJ,这样就比较麻烦了;
2、在maven项目的pom.xml中build标签下插入:
<resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> </resource> </resources>
手工将src下所有xml文件引入编译;
3、进入Project Structure -> Modules中,将你的mapper目录设置为Resouce类型: