idea工具配置mybatis的xml映射(xml放入src目錄下的配置)


 

關於mybatis “org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)” 錯誤的問題。

原創  2016年05月09日 11:05:18

關於mybatis “org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)” 錯誤的問題。

最近從eclipse轉到intellij idea,確實比eclipse好用太多,但是也是各種不熟悉,導致了很多問題,本來搭好的maven+ssm框架在eclipse上能用,遷移到idea中是各種問題,一一解決之后就剩下這個問題。org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) : org.dao.UserDao.selectByPrimaryKey,意思是我的mapper和dao的映射和接口綁定有問題。 
這里寫圖片描述

我的spring和mybatis整合配置如下: 
代碼截圖 
但我的mapper和dao中是一一對應的,所以我的問題不在這兒。 
Junit測試一直是紅色的一條,這個問題讓我頭疼,網上看了很多資料最后發現是intellij idea的問題,在eclipse中把mapper的xml文件放到src代碼目錄下是可以一起打包進classes的,而在新版intellij idea中是不會一起打包,就會導致找不到xml報錯。

  • 首先確保xml中的namespace配置是你的接口全類名,而不是包名!
  • 確認dao接口中的方法,和xml中一一對應,返回類型,參數都正確。

解決方法

  • 第一種,由於idea默認是不打包src中的xml文件,所以在eclipse中你可以把xml放到src中沒有問題,但是在idea中,你把mapper的xml文件放到resources資源中就可以正常訪問!

  • 第二種 在maven配置maven對資源文件的訪問,具體做法:在pom中,build節點中加入

這里寫圖片描述

總結

以上兩種方法個人在intellij idea中親測成功。 
Junit測試通過。看着那一條變成綠色,log4j日志打印成功,整個人都輕松了。 
這里寫圖片描述


免責聲明!

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



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