初學mybatis時需要注意這幾樣事項

今天就跟大家聊聊有關初學mybatis時需要注意這幾樣事項,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領域值得信任、有價值的長期合作伙伴,公司提供的服務項目有:域名與空間、虛擬空間、營銷軟件、網(wǎng)站建設、彰武網(wǎng)站維護、網(wǎng)站推廣。

什么是mybatis

MyBatis是支持普通SQL查詢,存儲過程和高級映射的優(yōu)秀持久層框架。MyBatis消除了幾乎所有的JDBC代碼和參數(shù)的手工設置以及結果集的檢索。MyBatis使用簡單的XML或注解用于配置和原始映射,將接口和Java的POJOs(Plan Old Java Objects,普通的Java對象)映射成數(shù)據(jù)庫中的記錄.

orm工具的基本思想

無論是用過的hibernate,mybatis,你都可以法相他們有一個共同點:

1. 從配置文件(通常是XML配置文件中)得到 sessionfactory.

2. 由sessionfactory  產(chǎn)生 session

3. 在session 中完成對數(shù)據(jù)的增刪改查和事務提交等.

4. 在用完之后關閉session 。

5. 在Java 對象和 數(shù)據(jù)庫之間有做mapping 的配置文件,也通常是xml 文件。

參數(shù)問題

在映射文件中通過parameterType指定輸入?yún)?shù)的類型;在映射文件中通過resultType指定輸出結果的類型。

占位符和拼接符問題

#{}表示一個占位符號,#{}接收輸入?yún)?shù),類型可以是簡單類型,pojo、hashmap。

如果接收簡單類型,#{}中可以寫成value或其它名稱。

#{}接收pojo對象值,通過OGNL讀取對象中的屬性值,通過屬性.屬性.屬性...的方式獲取對象屬性值。

${}表示一個拼接符號,會引用sql注入,所以不建議使用${}。

${}接收輸入?yún)?shù),類型可以是簡單類型,pojo、hashmap。

如果接收簡單類型,${}中只能寫成value。

${}接收pojo對象值,通過OGNL讀取對象中的屬性值,通過屬性.屬性.屬性...的方式獲取對象屬性值。

selectone和selectList  

初學mybatis時需要注意這幾樣事項

在我們通過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

看完上述內(nèi)容,你們對初學mybatis時需要注意這幾樣事項有進一步的了解嗎?如果還想了解更多知識或者相關內(nèi)容,請關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。

當前名稱:初學mybatis時需要注意這幾樣事項
網(wǎng)址分享:http://bm7419.com/article10/jdjdgo.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、營銷型網(wǎng)站建設、手機網(wǎng)站建設、響應式網(wǎng)站、微信公眾號、網(wǎng)站營銷

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設網(wǎng)站維護公司