• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            xiaoguozi's Blog
            Pay it forword - 我并不覺的自豪,我所嘗試的事情都失敗了······習慣原本生活的人不容易改變,就算現狀很糟,他們也很難改變,在過程中,他們還是放棄了······他們一放棄,大家就都是輸家······讓愛傳出去,很困難,也無法預料,人們需要更細心的觀察別人,要隨時注意才能保護別人,因為他們未必知道自己要什么·····

            Hibernate文檔筆記共分為三個部分,此處是第一部分,講述了對象定義、實例狀態、JMX集成和JCA 支持四個部分的內容。

            一、對象定義

            1.org.hibernate.SessionFactory

            對于單個數據庫,被編譯的映射,是一個線程安全的緩沖區。是一個Session和ConnectionProvider客戶端的工廠。擁有可選的對過程級和集群級重復利用的數據的緩存(二級緩存)。

            2.org.hibernate.Session

            單線程、短生命周期的在應用程序和持久化存儲系統之間的一個會話對象。封裝了一個JDBC連接。是一個事務的工廠。擁有強制的對持久化對象的緩存(一級緩存),當通過標識瀏覽對象之間關系和查找對象時使用。

            3.Persistent objects and collections

            包含執久化狀態和業務功能的短生命周期的、單線程對象。可以是POJOs,通常是和Session(嚴格說,是單個Session)相關聯的對象。Session一關閉,他們將和Session分離,可以自由的使用在應用層的任何地方。(也就是說,作為傳輸對象使用(Transfer Object)。)

            4.Transient and detached objects and collections

            不和當前Session關聯的持久化類的實例。他們可以被應用程序在不持久化時實例化,也可以被關閉的Session實例化。

            5.org.hibernate.Transaction (可選)

            應用程序用來指定一個原子操作的單線程、短生命周期的對象。低層JDBC、JTA、CORBA事務的抽象程序。在相似的情況下,一個Session可以同時橫跨多個事務。事務劃分,既可以使用低層的APIs,也可以使用Transaction。

            6.org.hibernate.connection.ConnectionProvider (可選)

            JDBC連接或JDBC連接池的工廠。低層DataSource和DriverManager的抽象程序。

            這個對象不暴露給應用程序,但是應用程序可以被開發者繼承和實現。

            7.org.hibernate.TransactionFactory (可選)

            Transaction實例的工廠。這個對象不暴露給應用程序,但是應用程序可以被開發者繼承和實現。

            二、實例狀態

            持久化對象根據持久化上下文的定義,可以有三種不同的狀態。Hibernate Session對象是一個持久化上下文。

            1.transient

            不關聯任何的持久化上下文。沒有持久化的標識(指主鍵值Primary key value)。

            2.persistent

            和當前持久化上下文關聯。他有一個持久化標識,多數情況,在數據庫中有對應的行。對于特定的持久化上下文,Hibernate保證持久化標識和Java標識(內存中對象的位置)相同。

            3.detached

            曾經和一個持久化上下文關聯,持久化上下文關閉;或者對象在另一個進程中被序列化。他擁有持久化標識,多數情況,在數據庫中有對應的行。對于分離對象Hibernate不保證持久化標識和Java標識的對應關系。

            三、JMX集成

            JMX是Java組件管理的JEE標準。Hibernate可以被JMX服務管理。在發行版本中,Hibernate提供了一個MBean的實現,org.hibernate.jmx.HibernateService。

            在JBoss上,你使用JMX可以得到的好處:

            1.Session Management

            Hibernate Session的生命周期可以自動的綁定到JTA事務范圍。這意味著,你不需要手動的打開關閉Session,這成為JBoss EJB攔截器的要完成的工作。在你的代碼中,也不用擔心事務的劃分,當然除非你想要寫一個輕便的持久化層,通過使用Hibernate Transaction APIs。你可以調用HibernateContext來訪問Session。

            2.HAR deployment

            通常使用JBoss Service Deployment Descriptor(在EAR或SAR文件中)發布Hibernate JMX Service,它支持Hibernate SessionFactory所有的常用配置選項。無論如何,你還需要在deployment descriptor中描述所有的映射文件。如果你使用可選的HAR Deployment,JBoss將自動檢測所有的映射文件在HAR文件中。

            四、JCA 支持

            Hibernate也可以配置作為一個連接器。該功能是實踐型功能。

            以上四個方面的內容組是我的Hibernate文檔筆記的第一部分,想更多的了解,請關注其他兩個部分。

            posted on 2009-07-17 17:17 小果子 閱讀(105) 評論(0)  編輯 收藏 引用 所屬分類: 學習筆記
            久久99精品久久久久久9蜜桃| 久久精品国产亚洲AV无码麻豆| 久久天堂AV综合合色蜜桃网| 亚洲精品tv久久久久久久久久| 欧美粉嫩小泬久久久久久久| 久久精品二区| 欧美日韩中文字幕久久久不卡| 久久亚洲精品无码播放| 亚洲午夜精品久久久久久app| 色偷偷88欧美精品久久久| 久久精品成人免费国产片小草| 亚洲精品无码久久毛片| 久久久久精品国产亚洲AV无码| 一本久久a久久精品vr综合| 午夜久久久久久禁播电影| A狠狠久久蜜臀婷色中文网| 色偷偷888欧美精品久久久| 久久93精品国产91久久综合| 亚洲国产成人精品女人久久久| 亚洲精品白浆高清久久久久久| 久久99亚洲网美利坚合众国| 99久久伊人精品综合观看| 无码任你躁久久久久久老妇| 久久精品国产精品亚洲精品| 99久久久精品免费观看国产| 久久综合九色综合久99| 亚洲国产日韩综合久久精品| 久久精品国产亚洲AV无码麻豆 | 国内精品欧美久久精品| 色婷婷狠狠久久综合五月| 久久久久99精品成人片直播| 国产2021久久精品| 亚洲va久久久噜噜噜久久狠狠 | 久久久久中文字幕| 久久综合狠狠综合久久97色| 久久精品无码专区免费青青 | 人妻精品久久无码区| 国产精品成人99久久久久 | 亚洲欧美久久久久9999 | 亚洲精品国精品久久99热一| 久久精品二区|