国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

在Java EE環境下使用Kodo EJB

2019-11-18 11:13:43
字體:
來源:轉載
供稿:網友

  Kodo EJB是一個支持對象/關系映射的框架,根據EJB3規范的要求,Kodo EJB除了支持在普通java應用中提供輕量級的持久層框架之外,也支持在JAVA EE容器中使用滿足重量級企業應用的需求,充分利用JAVA EE容器中提供的優越特性如容器治理事務、遠程(Remote)訪問。

  基于Kodo EJB開發的應用支持使用EJB或者JCA標準接入到JAVA EE環境中:
  1. JCA

    Kodo EJB支持JCA1.0標準,因此基于Kodo EJB開發的應用可以和其他JCA資源一樣輕松的發布到JAVA EE應用服務器上。

  2. JNDI

    另外一種方式是將kodo.persistence.EntityManagerFactoryImpl的一個實例綁定到JNDI,然后通過查找JNDI的方式使用Kodo EJB應用。雖然這種方式需要開發者根據不同的JAVA EE容器編寫代碼才能完成,但是這種方式能夠保持最大限度的JAVA EE容器可移植性,而且為在那些不支持JCA標準的JAVA EE容器中使用Kodo EJB創造可能。

  本文中我們將以通過一個簡單的例子,簡單的講解和演示如何在Weblogic9上通過JNDI方式來訪問Kodo EJB應用。環境預備

  由于Kodo是基于注釋機制的框架,我們必須使用JDK5.0完成開發工作。所以下載、安裝Kodo之前,請確保您已經下載和安裝了JDK5.0。

  為了演示的需要,我們選擇MySQL數據庫作為持久化的目標數據庫,請大家自己到www.mysql.com下載最新的MySQL數據庫后安裝。

  安裝Kodo

  Kodo的最新版本是Kodo 4.0.0 Early access 4,目前大家可以到http://www.solarmetric.com/去下載試用版本,下載時需要注冊,你會得到30天的License。

  將下載的壓縮文件解壓到c:/kodo4目錄下(后面將使用%KODO_HOME%來引用這個目錄),打開%KODO_HOME%/bin/kodocmd.cmd文件,將其中的KODODIR設置為您的Kodo的安裝目錄,將JDKHOME設置為Java的安裝目錄。

  安裝Weblogic9

  Kodo EJB在JAVA EE環境下運行時需要EJB容器支持EJB3標準,BEA最新發布的Weblogic9服務器就支持EJB3標準,因此我們選擇Weblogic9作為演示時使用的目標服務器。大家可以到http://www.bea.com下載Weblogic9,然后將Weblogic9安裝到自己的機器上。

  [注]本文中的實例是實現可遠程訪問的EJB實例,因此你可以將Weblogic9安裝到其他機器上,不過客戶端調用的時候需要增加一些環境變量,請參考后面的說明。
開發Kodo EJB應用

  由于篇幅的關系,我們直接使用《Kodo EJB:符合EJB3規范的持久層框架》一文中已經創建好的例子,包括環境預備、持久化類創建、數據庫創建等工作,下面的章節中將盡量不再重復《Kodo EJB:符合EJB3規范的持久層框架》一文中已經提到的步驟,而是重點描述需要額外完成的工作。

  在EJB開發中,我們通常都采用session Fa?ade設計模式,因此下面的例子也使用了這種設計模式來封裝Kodo EJB應用。

  我們使用一個無狀態的Session Bean來封裝對Book類的所有操作,由于Kodo EJB應用中需要開發者完成kodo.persistence.EntityManagerFactoryImpl的實例到JNDI的綁定,我們把這部分工作訪在Session Bean中完成,下面是Session Bean的接口和實現的全部代碼,請注重代碼中增加的注釋,他們有助于您了解Kodo EJB如何工作的。

  BookBean類

  下面是BookBean類的源代碼,請大家非凡注重BookBean類中的setSessionContext方法,其中的代碼將
kodo.persistence.EntityManagerFactoryImpl的實例綁定到JNDI上。
package org.vivianj.kodo.examples.ejb.stateless; import java.rmi.RemoteException; import java.util.Collection; import javax.ejb.EJBException; import javax.ejb.SessionBean; import javax.ejb.SessionContext; import javax.naming.InitialContext; import javax.naming.NamingException; import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.PersistenceContextType; import javax.persistence.Query; 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 麻城市| 海晏县| 湾仔区| 大同市| 天台县| 大足县| 景谷| 文山县| 兖州市| 彭水| 诏安县| 曲阜市| 蛟河市| 建德市| 宣武区| 甘肃省| 墨脱县| 沾益县| 亚东县| 聊城市| 手机| 绍兴市| 丹棱县| 辽阳市| 蚌埠市| 夹江县| 柘城县| 和田市| 武清区| 梨树县| 延庆县| 陆川县| 尉氏县| 循化| 交口县| 班玛县| 中超| 深水埗区| 饶河县| 栖霞市| 北海市|