您好,登錄后才能下訂單哦!
本篇內容主要講解“Hibernate使用JCA的過程介紹”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Hibernate使用JCA的過程介紹”吧!
Hibernate有很多值得學習的地方,這里我們主要介紹Hibernate JCA,包括介紹Hibernate使用了WebLogic的Java命名和目錄接口等方面。
在本文中,我將介紹Hibernate JCA,其中Hibernate使用了WebLogic的Java命名和目錄接口(JavaNamingandDirectoryInterface,JNDI)、Java事務API(JavaTransactionAPI,JTA)、Java連接器架構(JavaConnectorArchitecture,JCA)和Java管理擴展(JavaManagementextension,JMX)實現。
我們先從JNDI開始。通過在hibernate.cfg.xml文件中命名SessionFactory,Hibernate使SessionFactory在JNDI中可用。呀!這在WebLogic中不起作用。正如此處所描述的,WebLogicJNDI與Hibernate配合得不是很好。有多個工作區。工作區手動將SessionFactory綁定到JNDI中,方法是通過WebLogicstartup類或者啟動servlet。但是,我不能使SessionFactory實例從JNDI安全返回。因此,折衷一下,為SessionFactory向HibernateUtil實用類添加一個存取器。
為了配置Hibernate JTA,我在hibernate.cfg.xml文件中配置了transaction.factory_class。有兩個選項:org.hibernate.transaction.JTATransactionFactory和org.hibernate.transaction.CMTTransactionFactory。說明文檔建議,對Bean托管事務界定(BeanManagedTransactionDemarcation,BMTD)bean使用JTATransactionFactory,而對容器托管事務界定(ContainerManagedTransactionDemarcation,CMTD)bean使用CMTTransactionFactory。JTATransactionFactory似乎更通用些,它既支持BMTDbean又支持CMTDbean。因此,我配置的是JTATransactionFactory。此外,為了以特定于容器的方式查找事務,我在hibernate.cfg.xml文件中配置了transaction.manager_lookup_class。借助于這個配置,我完全不需要使用HibernateTransactionAPI。
對Hibernate JCA,目前還沒有全面應用于WebLogic。我可以設想,以后Hibernate會被打包為ResourceARchive(RAR)文件。HibernateRAR文件作為資源適配器部署。適配器使Session在JNDI中可用。所有的配置元素都是通過資源適配器(xml文件)配置的,而不是通過hibernate.cfg.xml文件或采用其他方法配置。為什么在WebLogic中要配置Hibernate使用JCA?JCA旨在封裝傳統系統的連接、事務等等,并使它們在J2EE中可用。但是,由于Hibernate,傳統的資源適配器的優勢不能全面體現。一旦Hibernate被配置為資源適配器,特定的應用程序與Hibernate的耦合就被削弱了。多個不同的應用程序可以使用同一個Hibernate資源適配器。由于當前正在開發的EJB3.0,這種配置在EJB的持久性API、Hibernate和Java數據對象(JavaDataObject,JDO)的標準化方面的優勢更為明顯。從理論上講,可以熱部署(或重部署)適配器和改變持久性實現。
Hibernate附帶JMXManagementBean(MBean)實現。我不知道如何使用JMX將Hibernate部署到WebLogic上。Hibernate和WebLogic使用JMX有什么好處?至少有兩條。一條是部署和重部署。更重要的一條是,可以監控Hibernate和獲得的統計信息。從JMX控制臺進行運行時監控是所部署的應用程序運行良好的基本保障。
到此,相信大家對“Hibernate使用JCA的過程介紹”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。