日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網營銷解決方案
淺析Hibernate基礎知識

Hibernate有很多值得學習的地方,這里我們主要介紹Hibernate基礎知識,包括介紹主鍵Id得到一個持久對象,Hibernate中有兩個方法等方面。

今天重新學習Hibernate,雖然一年多以前跟老師學過Hibernate基礎知識,但現(xiàn)在重新學習還是有很多收獲的,發(fā)現(xiàn)自己的知識知道的都是些皮毛,用了很久的東西,知道怎么操作怎么用,但要說說它的所以然,搖搖頭,呵呵

Hibernate是JDBC的升級版,專用連接數(shù)據(jù)庫。
Hibernate比JDBC簡單使用,不需要輸入很多的連接數(shù)據(jù)庫代碼。提取數(shù)據(jù)庫數(shù)據(jù)也不用循環(huán)提取。使用時的方法為:

1.新建一個Java普通項目

2.創(chuàng)建user library 加入三個地方的jar包:兩個Hibernate 一個MYSQL驅動

3.創(chuàng)建Hibernate配置文件,Hibernate.cfg.xml

4.建立實體類user

5.在Hibernate文件中尋找eg至底部找出user.hbm.xml映射文件,copy到映射文件所在文件中

6.將映射文件user.hbm.xml部分加入到Hibernate.cfg.xml中

7.創(chuàng)建數(shù)據(jù)庫,再利用Hibernate將實體映射導入到數(shù)據(jù)庫中

根據(jù)主鍵Id得到一個持久對象,Hibernate中有兩個方法,一個get,一個load,他們兩個參數(shù)相同,都返回一個Object

它們的區(qū)別:執(zhí)行get方法即時生成查詢sql去查詢數(shù)據(jù)庫得到相應的pojo,如果數(shù)據(jù)庫中沒有相應記錄,則返回null執(zhí)行l(wèi)oad方法不會即時產生 sql語句,而是在用到返回的對象時采取查詢數(shù)據(jù)庫,也就是load方法有默認的延遲加載,在執(zhí)行l(wèi)oad方法后返回的不是一個pojo對象,是pojo 對象的一個代理(據(jù)說Hibernate是用代理的方式實現(xiàn)延遲加載的,這塊還迷糊),如果數(shù)據(jù)庫中沒有相應記錄,load方法會拋出異常ObjectNotFoundException看了一下我們用MyEclipse Hibernate工具通過數(shù)據(jù)庫生成的DAO類,它的findById方法是用的session.get()方法,這是即時獲得pojo對象,如果是load方法,在執(zhí)行完load后如果關閉了session,那在接下來用到這個pojo對象時恐怕會報session已關閉的錯誤。

還有就是這兩個方法的第二個參數(shù)id,它必須是實現(xiàn)了java.io.Serializable接口,也就是可序列化的。以上介紹Hibernate基礎知識。


分享標題:淺析Hibernate基礎知識
網址分享:http://www.dlmjj.cn/article/cdgcoes.html