教育行業(yè)A股IPO第一股(股票代碼 003032)

全國(guó)咨詢/投訴熱線:400-618-4000

Hibernate的執(zhí)行流程和持久化操作

更新時(shí)間:2022年03月22日16時(shí)23分 來(lái)源:傳智教育 瀏覽次數(shù):

好口碑IT培訓(xùn)

在Hibernate開(kāi)發(fā)過(guò)程中通常會(huì)用到5個(gè)核心接口,分別為:Configuration接口、SessionFactory接口、Session接口、Transaction接口和Query接口。通過(guò)這些接口可以對(duì)持久化對(duì)象進(jìn)行操作,還可以進(jìn)行事務(wù)控制。在使用Hibernate前,先了解一下Hibernate的執(zhí)行流程,如圖7-6所示。

Hibernate的執(zhí)行流程

圖7-6Hibernate的執(zhí)行流程

從圖中7-6中可以看到,Hibernate從開(kāi)始到結(jié)束的執(zhí)行流程。下面結(jié)合圖中的執(zhí)行流程,介紹一下Hibernate持久化操作的主要步驟,具體如下:

(1)初始化Hibernate,構(gòu)建Configuration實(shí)例。這一步用來(lái)讀取Hibernate核心配置文件和映射文件信息到Configuration對(duì)象中。

(2)創(chuàng)建SessionFactory實(shí)例。通過(guò)Configuration對(duì)象讀取到的配置文件信息并創(chuàng)建SessionFactory,并 將Configuration對(duì)象中的所有配置文件信息存入SessionFactory內(nèi)存中。

(3)創(chuàng)建Session實(shí)例,建立數(shù)據(jù)庫(kù)連接。Session是通過(guò)SessionFactory打開(kāi),創(chuàng)建一個(gè)Session對(duì)象就相當(dāng)于建立一個(gè)新的數(shù)據(jù)庫(kù)連接。

(4)創(chuàng)建Transaction實(shí)例,開(kāi)啟一個(gè)事務(wù)。Transaction用于事務(wù)管理,一個(gè)Transaction對(duì)象對(duì)應(yīng)的事務(wù)可以包含多個(gè)操作。在使用Hibernate進(jìn)行增、刪、改操作的時(shí)候,必須先創(chuàng)建Transaction對(duì)象。

(5)利用Session接口通過(guò)的各種方法進(jìn)行持久化操作。

(6)提交事務(wù)。對(duì)實(shí)體對(duì)象持久化操作后,必須提交事務(wù)。

(7)關(guān)閉Session,斷開(kāi)與數(shù)據(jù)庫(kù)連接。





猜你喜歡:

lock和synchronized有什么區(qū)別?【java面試題】

聚合分為幾類?用DSL實(shí)現(xiàn)Bucket聚合

實(shí)現(xiàn)Runnable接口創(chuàng)建多線程

Hibernate中如何獲取與線程綁定的session源碼解析

傳智教育Java開(kāi)發(fā)培訓(xùn)課程

0 分享到:
和我們?cè)诰€交談!