mybatis入门-新手注意问题
參數(shù)問題
在映射文件中通過parameterType指定輸入?yún)?shù)的類型;在映射文件中通過resultType指定輸出結(jié)果的類型。
占位符和拼接符問題
#{}表示一個占位符號,#{}接收輸入?yún)?shù),類型可以是簡單類型,pojo、hashmap。
如果接收簡單類型,#{}中可以寫成value或其它名稱。
#{}接收pojo對象值,通過OGNL讀取對象中的屬性值,通過屬性.屬性.屬性...的方式獲取對象屬性值。
?
${}表示一個拼接符號,會引用sql注入,所以不建議使用${}。
${}接收輸入?yún)?shù),類型可以是簡單類型,pojo、hashmap。
如果接收簡單類型,${}中只能寫成value。
${}接收pojo對象值,通過OGNL讀取對象中的屬性值,通過屬性.屬性.屬性...的方式獲取對象屬性值。
selectone和selectList
在我們通過sqlSession進行查詢的時候,可以選擇selectOne和選擇SelectList,這個時候,它們是有區(qū)別的。
selectOne表示查詢出一條記錄進行映射。如果使用selectOne可以實現(xiàn)使用selectList也可以實現(xiàn)(list中只有一個對象)。
selectList表示查詢出一個列表(多條記錄)進行映射。如果使用selectList查詢多條記錄,不能使用selectOne。
如果使用selectOne報錯:
org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 4
轉(zhuǎn)載于:https://www.cnblogs.com/liyasong/p/6387004.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的mybatis入门-新手注意问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。