天天看點

關于mybatis綁定錯誤-- Invalid bound statement (not found)的解決心得

SpringBoot 內建 mybatis綁定錯誤-- Invalid bound statement (not found)

1)檢查 SpringBoot啟動類注解@MapperScan與Dao所在包是否一緻

2)檢查application中 mybatis.mapper-locations=與 mtbaties 的xml包是有相同

注意:如果Dao 在JAR包中,classpath需要設定成classpath*
1)classpath:隻會到你的class路徑中查找找檔案。
classpath*:不僅包含class路徑,還包括jar檔案中(class路徑)進行查找。
注意: 用classpath*:需要周遊所有的classpath,是以加載速度是很慢的;是以,在規劃的時候,應該盡可能規劃好資源檔案所在的路徑,盡量避免使用classpath*。
           

3)檢查 xml檔案namespace與Dao是否一緻

4)檢查xml檔案是否編譯到class檔案,如沒有pomx檔案需要做如下配置

在bulid标簽中增加以下代碼
 <resources>
            <resource>
                <!--配置檔案路徑  -->
                <directory>src/main/resources</directory> <!--這裡對應項目存放配置檔案的目錄-->
                <!--開啟filtering功能  -->
                <filtering>true</filtering>
            </resource>

            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                </includes>
                <filtering>false</filtering>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>**/*.*</include>
                </includes>
                <filtering>false</filtering>
            </resource>
        </resources>
           

5)XML檔案中注意大小寫和空格符

繼續閱讀