1. 程式人生 > >新版IntelliJ IDEA中Mybatis報Invalid bound statement (not found)錯誤解決辦法

新版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型別: