J2EE入門(3) (轉)

gugu99發表於2008-03-18
J2EE入門(3) (轉)[@more@]

建立Enterprise Bean

enterprise bean 是一個包含應用商務邏輯的服務端.在執行時期, 應用程式客戶端enterprise bean的方法商務邏輯.在我們的例子中enterprise bean是一個稱為Converter的無狀態session bean. ConverterEJB bean的原始碼在examples/src/ejb/converter目錄中.

編寫Enterprise Bean

這個例子中的enterprise bean需要下面的程式碼:

  • Remote interface
  • Home interface
  • Enterprise bean class

編寫Remote Interface

remote interface 定義客戶端可以呼叫的商務方法. 商務方法在enterprise bean中實現. 下面是Converterremote interface 的.

import x.ejb.EJB; import java..RemoteException; public interface Converter extends EJBObject { public double dollarToYen(double dollars) throws RemoteException; public double yenToEuro(double yen) throws RemoteException; }

編寫Home Interface

home interface定義允許客戶端去建立, 查詢,或移除enterprise bean的方法. ConverterHome interface包含單個create方法,它返回一個remote interface型別的.這是ConverterHome介面的原始碼:

import java.io.Serializable; import java.rmi.RemoteException; import javax.ejb.CreateException; import javax.ejb.EJBHome; public interface ConverterHome extends EJBHome { Converter create() throws RemoteException, CreateException; }

編寫Enterprise Bean Class

例子中的enterprise bean class稱為 ConverterBean.這個類實現兩個商務方法, dollarToYenyenToEuro, 它們由Converter remote interface定義.下面是ConverterBean類的原始碼.

import java.rmi.RemoteException; import javax.ejb.SessionBean; import javax.ejb.SessionContext; public class ConverterBean implements SessionBean { public double dollarToYen(double dollars) { return dollars * 121.6000; } public double yenToEuro(double yen) { return yen * 0.0077; } public ConverterBean() {} public void ejbCreate() {} public void ejbRemove() {} public void ejbActivate() {} public void ejbPassivate() {} public void setSessionContext(SessionContext sc) {} }

編譯源

現在可以準備去編譯remote interface(Converter.java), home interface (ConverterHome.java),和enterprise bean類 (ConverterBean.java):

  1. examples/src 目錄.
  2. 在終端視窗鍵入下列命令:

    ant converter

這個命令編譯enterprise bean和應用程式客戶端的原始檔 . 它把生成的類檔案放在examples/build/ejb/converter目錄中. 要獲得更多關於ant的資訊,檢視.


注意: 當編譯程式碼的時候,ant需要包含在classpath中的j2ee.jar檔案. 這個檔案放在J2EE SDK的lib目錄下. 如果你打算使用其它的工具去編譯J2EE元件的原始碼,確認在classpath中包括j2ee.jar 檔案.

打包Enterprise Bean

在這個章節中你將執行deploytool的New Enterprise Bean Wizard 去執行這些任務:

  • 建立the bean's deployment descriptor.
  • 在一個EJB JAR檔案中打包deployment descriptor和bean的類.
  • 嵌入EJB JAR檔案到應用程式的ConverterApp.ear檔案中.

要開始New Enterprise Bean Wizard,選擇File->New Enterprise Bean. 嚮導顯示下面對話方塊.

  1. Introduction對話方塊
    1. 閱讀嚮導特性概覽的說明文字.
    2. 單擊Next.
  2. EJB JAR對話方塊
    1. 在應用程式按鈕中選擇Create new EJB File.
    2. 在組合框中,選擇ConverterApp.
    3. 在EJB Display Name的欄中輸入ConverterJAR.
    4. 單擊 Edit.
    5. 在Available Files的目錄樹下,找到examples/build/ejb/converter目錄.(如果converter目錄在樹的多層下,你可以在Starting Directory欄輸入全部或部分converter的目錄路徑名以簡化樹的檢視.)
    6. 從Available Files目錄樹中選擇下面的類 然後單擊Add: Converter.class, ConverterBean.class, ConverterHome.class. (你也可以拖動這些類檔案到Contents text區域.)
    7. 單擊OK.
    8. 單擊Next.
  3. 常規對話方塊
    1. 在Bean型別下,選擇Session單選按鈕.
    2. 選擇Stateless單選按鈕.
    3. 在Enterprise Bean Class組合框中,選擇ConverterBean.
    4. 在Enterprise Bean Name欄, 輸入 ConverterEJB.
    5. 在Remote Home Interface組合框,選擇ConverterHome.
    6. 在Remote Interface組合框,選擇Converter.
    7. 單擊Next.
  4. 事務管理對話方塊

因為你可以忽略剩下的對話方塊,直接單擊Finish.

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10748419/viewspace-1001093/,如需轉載,請註明出處,否則將追究法律責任。