關於springboot與mybatis整合出現Invalid bound statement (not found): com.llfy.demo.dao.LoginMapper.getAll問題


如果出現org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)錯誤,一般的原因是Mapper interface和xml文件的定義對應不上,需要檢查包名,namespace,函數名稱等能否對應上,需要比較細致的對比,按以下步驟一一執行:

1、檢查xml文件所在的package名稱是否和interface對應的package名稱一一對應

2、檢查xml文件的namespace是否和xml文件的package名稱一一對應

3、檢查函數名稱能否對應上

4、去掉xml文件中的中文注釋

5、隨意在xml文件中加一個空格或者空行然后保存

除此之外,我遇到的還有一些特殊情況,耽誤了我不少時間,網上有其他原因也導致bound找不到:

1、Intellij Idea 的包名和目錄名生成機制,新建一個包a.b.c.d,目錄結構不是a->b->c->d,而是生成"a.b.c.d"的目錄,進而導致mybatis映射錯誤,此錯誤很難排查。

一:指定mapper掃描位置

 

 

二 :在mapper指定的xml位置通知給mybatis

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM