【編者按】為了協助國內J2EE初學者,將J2EE部分文檔進行編譯,期望能夠對廣大Java愛好者有所協助。
本文將通過簡單例子,描述如何利用EJB開發、部署和運行一個客戶機/伺服器應用。例子的用戶端作為Java獨立應用運行,由 ConverterClient.java類實現。它實現一個簡單的即時會話,主要通過用戶端應用調用伺服器端EJB類 ConverterEJB.java來實現。如果你已經安裝了J2EE,則可以在doc/guides/ejb/examples/converter目錄中找到這些例子。
為了實現本文所描述的簡單例子,你需要完成以下任務:
·編寫和編譯EJB程式
·建立J2EE應用
·打包EJB(.jar)
·部署J2EE應用
·編寫和編譯用戶端程式
·運行用戶端
下面章節我們將就上述工作任務以及所涉及的知識點進行簡單闡述。
前提
實現本文提供例子的前提是您安裝了Javasoft.com或相關作業系統廠商網站下載的J2SE SDK,以及安裝了相應作業系統版本的J2EE SDK(www.javasoft.com下載)並進行了正確配置。關於J2SE和J2EE的安裝、配置和其它進一步資訊,請參閱產品相關文檔。
EJB編碼
每個EJB程式必須要求編寫下述代碼:
·遠程介面(Remote interface )
·本地介面(Home interface )
·實現組件(Enterprise bean class )
遠程介面編碼
遠程介面定義了用戶端能夠調用的商業方法,這些商業方法是有伺服器端的企業組件實現的,本文所涉及的Converter.java編碼如下:
import javax.ejb.EJBObject;//引入必須的包 import java.rmi.RemoteException; public interface Converter extends EJBObject {//必須繼承EJBObject類 /*定義用戶端可以調用的方法*/ public double dollarToYen(double dollars) throws RemoteException; public double yenToEuro(double yen) throws RemoteException; } |
本地介面編碼
本地介面定義了員徐用戶端建立、尋找或移動EJB的方法,本文所涉及的本地介面類ConverterHome介面只定義了一個create方法,返回遠程介面類型,編碼如下:
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; } |
企業組件類(EJB)編碼
本文中的企業組件(EJB)是一個無狀態交談群組件,命名為ConverterEJB.java,該組件實現了兩個商業方法:dollarToYen和yenToEuro,與遠程介面Converter所定義用戶端可存取方法一致,該類編碼如下:
import java.rmi.RemoteException; import javax.ejb.SessionBean; import javax.ejb.SessionContext; public class ConverterEJB implements SessionBean { public double dollarToYen(double dollars) { return dollars * 121.6000; } public double yenToEuro(double yen) { return yen * 0.0077; } public ConverterEJB() {} public void ejbCreate() {} public void ejbRemove() {} public void ejbActivate() {} public void ejbPassivate() {} public void setSessionContext(SessionContext sc) {} } |
編譯EJB
現在需要對上述三個類進行編譯,在UNIX平台和NT/9X平台上的編譯略有區別,分別如下編譯:
UNIX:
1. 在下面的指令碼compileEJB.sh中,將該成實際J2EE安裝目錄。
#!/bin/sh J2EE_HOME= CPATH=.:$J2EE_HOME/lib/j2ee.jar javac -classpath "$CPATH" ConverterEJB.java ConverterHome.java Converter.java |
2. 運行compileEJB.sh 指令碼
Windows:
1. 在下面的compileEJB.bat批次檔中,將 該為實際J2EE安裝目錄。
set J2EE_HOME= set CPATH=.;%J2EE_HOME%/lib/j2ee.jar javac -classpath %CPATH% ConverterEJB.java ConverterHome.java Converter.java |
2. 運行批次檔compileEJB.bat。 作者Blog:http://blog.csdn.net/zaowei21/