問題:框架:maven springMVC 整合mybatis 導致dao調用異常
經過了半天時間,一直困惑我的是明明dao層已經注入成功,但是dao層並沒有調用mapper里面的方法,知道我把錯誤打印出來才知道是 org.apache.ibatis.binding.BindingException
百度查了很多,檢查項目mapper里面的sql語句是否正確,檢查annotation是否正確,注入是否正常,
現把spring注入一個代理,無法調用sql的情況歸納一下,主要排查幾個方面:
1、dao接口和dao的xml是否在一個包內,命名是否一致:
如:UserDaoI.java則最好對應UserDaoI.xml
2、dao的xml里面的命名空間是否和dao的包名一致
如:UserDaoI.java 所在的包是mis.dao.user ,那么UserDaoI.xml 的namespace就應該為mis.dao.user.UserDaoI
3: xml里面的Id對應dao里面的方法名,如果方法名和xml里id不一致,則無法調用
4:還有就是一些參數對應是否正確,resultType,resultMap,parameterType等