這篇文章主要介紹“Hibernate3的工作原理是什么”,在日常操作中,相信很多人在Hibernate3的工作原理是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Hibernate3的工作原理是什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
專注于為中小企業(yè)提供成都做網(wǎng)站、成都網(wǎng)站建設服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)如東免費做網(wǎng)站提供優(yōu)質的服務。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了成百上千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設實現(xiàn)規(guī)模擴充和轉變。
一、Hibernate3 的初始化
讀取Hibernate 的配置信息-〉創(chuàng)建Session Factory
1、創(chuàng)建Configeration類的實例。
它的構造方法:將配置信息(Hibernate config.xml)讀入到內存。
一個Configeration 實例代表Hibernate 所有Java類到Sql數(shù)據(jù)庫映射的集合。
2、創(chuàng)建SessionFactory實例
把Configeration 對象中的所有配置信息拷貝到SessionFactory的緩存中。 SessionFactory的實例代表一個數(shù)據(jù)庫存儲員源,創(chuàng)建后不再與Configeration 對象關聯(lián)。緩存(cache):指Java對象的屬性(通常是一些集合類型的屬性--占用內存空間。 SessionFactory的緩存中:Hibernate 配置信息。OR映射元數(shù)據(jù)。 緩存-大:重量級對象 小:輕量級對象
3、調用SessionFactory創(chuàng)建Session的方法
(1)用戶自行提供JDBC連接。
Connection con=dataSource.getConnection();
Session s=sessionFactory.openSession(con);
(2)讓SessionFactory提供連接
Session s=sessionFactory.openSession();
4、通過Session 接口提供的各種方法來操縱數(shù)據(jù)庫訪問。
二、Hibernate3 的緩存體系:
一級緩存:
Session 有一個內置的緩存,其中存放了被當前工作單元加載的對象。每個Session 都有自己獨立的緩存,且只能被當前工作單元訪問。
二級緩存:
SessionFactory的外置的可插拔的緩存插件。其中的數(shù)據(jù)可被多個Session共享訪問。SessionFactory的內置緩存:存放了映射元數(shù)據(jù),預定義的Sql語句。
三、Hibernate3 中Java對象的狀態(tài)
1、臨時狀態(tài) (transient)
特征:
(1)不處于Session 緩存中
(2)數(shù)據(jù)庫中沒有對象記錄
Java如何進入臨時狀態(tài):
(1)通過new語句剛創(chuàng)建一個對象時
(2)當調用Session 的delete()方法,從Session 緩存中刪除一個對象時。
2、持久化狀態(tài)(persisted)
特征:
(1)處于Session 緩存中
(2)持久化對象數(shù)據(jù)庫中設有對象記錄
(3)Session 在特定時刻會保持二者同步
Java如何進入持久化狀態(tài):
(1)Session 的save()把臨時-》持久化狀態(tài)
(2)Session 的load(),get()方法返回的對象
(3)Session 的find()返回的list集合中存放的對象
(4)Session 的update(),saveOrupdate()使游離-》持久化
3、游離狀態(tài)(detached)
特征:
(1)不再位于Session 緩存中
(2)游離對象由持久化狀態(tài)轉變而來,數(shù)據(jù)庫中可能還有對應記錄。
Java如何進入持久化狀態(tài)-》游離狀態(tài)
(1)Session 的close()方法
(2)Session 的evict()方法,從緩存中刪除一個對象。提高性能。少用。
到此,關于“Hibernate3的工作原理是什么”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
當前標題:Hibernate3的工作原理是什么
網(wǎng)頁鏈接:http://chinadenli.net/article10/jsiido.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、網(wǎng)站內鏈、響應式網(wǎng)站、網(wǎng)站營銷、微信小程序、移動網(wǎng)站建設
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)