There is no getter for property named 'userId' in 'class java.lang.String'


[ERROR] 2017-01-18 04:37:06:231 cn.dataenergy.common.CenterHandlerExceptionResolver (CenterHandlerExceptionResolver.java:44) - 統一捕獲異常: org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'userId' in 'class java.lang.String'

以前,遇到這樣的問題很是頭疼,發現你model對象並沒有缺少get方法,其實,是我理解錯了,正真的問題根源不在model層,而是在xml里,也就是sql寫錯,如果大家用的是mybatis,相信大家也一定會經常遇到這樣的問題,當然還會一其他類似的問題,我現在沒時間更新,以后問陸續更新的。總之,用mybatis,很大一部分問題都是出自xml文件里,如果我們有這個經驗,那么在解決問題的時候就能快速有效 的找到錯誤並解決了。這次,我雖然沒說具體的解決方案,是因為,這些問題很多,也很簡單,我覺得我教你們把問題解決,還不如叫你們如何找到問題。下面舉的思路只是其中的一種。

原因1,檢查可能出錯的bean,如果確實沒有個get方法,添加get方法即可解決

原因2,原因1沒有問題,可能出錯的就是對應的xml文件出錯了,一般,當只有一個查詢條件時,應當這樣寫where條件,userId={value},當查詢條件有多個的時候,一般我們是把他放到一個*ReqBean里,這個bean里的字段要和xml文件上面的sql-where字段一一對應

 


免責聲明!

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



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