• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    配置weblogic 8.1和hibernate 3.0

    發布: 2007-6-11 14:27 | 作者: Prakash Malani | 來源: | 查看: 28次 | 進入軟件測試論壇討論

    領測軟件測試網

    最近,在bartsandbox上,有人問我在WebLogic上配置Hibernate的具體步驟。您可能知道,Hibernate是一個非常流行的開源對象關系映射(Object Relational Mapping,ORM)工具。下面是在WebLogic 8.1上配置Hibernate的具體步驟:

    ◆首先要創建一個域。我創建了一個WebLogic Workshop(WLW)域,因為我打算使用WLW來創建和實現應用程序。

    ◆將hibernate...\lib\antlr-2.7.5H3.jar添加到PRE_CLASSPATH,或者在hibernate.cfg.xml文件中將query.factory_class屬性設為user 2.x's query factory。

    ◆WLW域還啟動了一個PointBase數據庫實例。我將使用這個內置實例。我創建了一個新的用戶和模式。并為該模式填充了一些示例數據。

    ◆在服務器實例中配置連接池和數據源。

    ◆創建應用程序。我打算使用WebLogic Workshop創建。

    ◆應該將庫(jar文件)(它們是成功運行Hibernate所必需的)放在哪里呢?放在應用程序的APP-INF/lib文件夾中。庫包括hibernate.jar和附加的第三方庫。引用Hibernate Reference的表格3-1。

    ◆在WLW中創建一個Java項目。該Java項目包括映射到數據庫的域類。WLW編譯該項目,并將生成的jar文件放到APP-INF/lib目錄下。在Java項目中編碼域類。創建Hibernate映射文件和Hibernate配置文件。此外,從Hibernate Reference復制實現,創建HibenateUtil類。Hibernate配置文件包括數據源的JNDI名。

    ◆創建一個EJB對象(例如,一個模塊)。該項目包含了會話bean。編寫一個操縱域類的會話bean。

    ◆創建一個Web或Web Service項目(例如,一個模塊)。該項目包含了可互操作性地測試會話bean的組件。

    完整、有效、自包含的示例應用程序在此。其中包括了模式和所有的Hibernate配置文件。

    我在上面描述了在WebLogic 8.1上配置Hibernate 3.0的具體步驟。下面將介紹高級配置,其中Hibernate使用了WebLogic的Java命名和目錄接口(Java Naming and Directory Interface,JNDI)、Java事務API(Java Transaction API,JTA)、Java連接器架構(Java Connector Architecture,JCA)和Java管理擴展(Java Management extension,JMX)實現。

    我們先從JNDI開始。通過在hibernate.cfg.xml文件中命名SessionFactory,Hibernate使SessionFactory在JNDI中可用。呀!這在WebLogic中不起作用。正如此處所描述的,WebLogic JNDI與Hibernate配合得不是很好。有多個工作區。工作區手動將SessionFactory綁定到JNDI中,方法是通過WebLogic startup類或者啟動servlet。但是,我不能使SessionFactory實例從JNDI安全返回。因此,折衷一下,為SessionFactory向HibernateUtil實用類添加一個存取器。

    為了配置Hibernate使用JTA,我在hibernate.cfg.xml文件中配置了transaction.factory_class。有兩個選項:org.hibernate.transaction.JTATransactionFactory和org.hibernate.transaction.CMTTransactionFactory。說明文檔建議,對Bean托管事務界定(Bean Managed Transaction Demarcation,BMTD)bean使用JTATransactionFactory,而對容器托管事務界定(Container Managed Transaction Demarcation,CMTD)bean使用CMTTransactionFactory。

    JTATransactionFactory似乎更通用些,它既支持BMTD bean又支持CMTD bean。因此,我配置的是JTATransactionFactory。此外,為了以特定于容器的方式查找事務,我在hibernate.cfg.xml文件中配置了transaction.manager_lookup_class。借助于這個配置,我完全不需要使用HibernateTransaction API。

    對Hibernate的JCA支持是實驗性質的,目前還沒有全面應用于WebLogic。我可以設想,以后Hibernate會被打包為Resource ARchive(RAR)文件。Hibernate RAR文件作為資源適配器部署。適配器使Session在JNDI中可用。所有的配置元素都是通過資源適配器(xml文件)配置的,而不是通過hibernate.cfg.xml文件或采用其他方法配置。為什么在WebLogic中要配置Hibernate使用JCA?JCA旨在封裝傳統系統的連接、事務等等,并使它們在J2EE中可用。但是,由于Hibernate,傳統的資源適配器的優勢不能全面體現。一旦Hibernate被配置為資源適配器,特定的應用程序與Hibernate的耦合就被削弱了。多個不同的應用程序可以使用同一個Hibernate資源適配器。由于當前正在開發的EJB 3.0,這種配置在EJB的持久性API、Hibernate和Java數據對象(Java Data Object,JDO)的標準化方面的優勢更為明顯。從理論上講,可以熱部署(或重部署)適配器和改變持久性實現。

    Hibernate附帶JMX Management Bean (MBean)實現。我不知道如何使用JMX將Hibernate部署到WebLogic上。Hibernate和WebLogic使用JMX有什么好處?至少有兩條。一條是部署和重部署。更重要的一條是,可以監控Hibernate和獲得的統計信息。從JMX控制臺進行運行時監控是所部署的應用程序運行良好的基本保障。

    (責任編輯 火鳳凰 sunsj@51cto.com  TEL:(010)68476636-8007)



    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>