?? 使用ejbframe輕松編寫ejb組件.txt
字號:
使用ejbframe輕松編寫EJB組件
(加入日期:2001-8-20 點擊數:808)
【對此文發表評論】 【編程愛好者論壇】 【保存文章至硬盤】 【打印文章】
EJB(Enterprise Java Bean)是J2EE中最核心的技術,定義了企業級應用組件規范。通過將業務邏輯封裝于EJB組件內,實現了3層結構的應用系統的開發。
然而,EJB規范相對比較復雜,編寫EJB需要編寫EJB的Home接口,Remote接口和EJB實現類。EJB規范對這些接口和類進行了許多約定,手工編寫十分不方便且容易出錯。這里,我向大家推薦一個工具,ejbframe。ejbframe是minij2ee提供的一個生成EJB組件框架源程序的工具,通過GUI界面操作就能自動生成正確的EJB Home接口,EJB Remote接口和EJB實現類的框架源程序,并且還可以生成訪問數據庫,訪問URL資源,收發郵件的代碼。你只要對生成的代碼進行填充,加入你的業務邏輯就可以方便的完成對EJB組件的編寫。
在介紹如何使用ejbframe之前,我們先簡單回顧一下EJB的基礎知識。在EJB specification 1.1中,EJB分為stateful session bean,stateless session bean和entity bean三種類型的enterprise bean。對于每一個EJB,Home接口定義了創建和查找EJB的方法;Remote接口定義了EJB的業務邏輯方法;EJB類需要實現同Home接口和Remote接口對應的方法,這些方法將被EJB Container調用來提供客戶對EJB的請求。關于EJB Home接口,Remote接口和EJB類的編寫方法,可以參看minij2ee的用戶手冊( http://www.minij2ee.com/document/ ),里面有詳細的描述。這里,我們要介紹的是如何使用ejbframe來方便的生成EJB的框架代碼。
我們以開發一個簡單的stateful session bean為例,來演示如何使用ejbframe。我們的這個演示EJB只提供一個getHelloWorld方法,返回一個“hello world from EJB!”的字符串。目前,ejbframe工具需要在windows上運行( http://www.minij2ee.com/download/ ),支持linux的版本正在開發中。
我們啟動ejbframe程序,進入ejbframe的主界面,然后進行如下操作:
1. 指定EJB Remote接口的名字:
在EJB information中的Remote interface name框中輸入EJB Remote接口的名字,這里我們的EJB叫Hello,輸入Hello。輸入后,ejbframe工具會自動生成EJB Home接口的名字為HelloHome,EJB類的名字為HelloEJB,EJB異常類的名字為HelloException,EJB部署的JNDI名字(ejb-jar.xml中<ejb-name>指定的值)為HelloBean。
2. 選擇EJB的類型:
在EJB information中的EJB Type中選擇session,因為我們這個EJB是session bean。
3. 為Remote接口添加方法:
如上所述,我們的EJB提供一個getHelloWorld方法。按Remote Interface Methods中的Add按鈕,彈出add method對話框。在add method對話框中,Return Type選String,Method Name中輸入getHelloWorld,按Ok。add method對話框中Addon Code區域用來選擇給這個方法生成的附加代碼,選中Database將生成數據庫訪問代碼,選中Pop3將生成收取Email的代碼,選中Smtp將生成發送郵件的代碼,選中URL將生成訪問URL資源的代碼。由于我們的這個EJB比較簡單,所以不需要生成附加的代碼
4. 為Home接口添加方法:
我們需要為EJB的Home接口添加一個create方法,用來創建EJB對象。按Home Interface Methods中的Add按鈕,彈出add method對話框。在add method對話框中,Method Type選create method,Method Name中輸入create,按Ok。
5. 生成EJB框架代碼
按主界面上的Generate按鈕,將出現一個DOS窗口,顯示:
done!
press any key。
這時當前目錄下就會生成Hello.java,HelloHome.java,HelloEJB.java和HelloException.java。
6. 完成代碼
打開HelloEJB.java,修改public String getHelloWorld() throws HelloException方法如下:
public String getHelloWorld() throws HelloException
{
return "hello world from EJB!";
}
然后,在目錄下運行javac *.java。最后生成了Hello.class,HelloHome.class,HelloEJB.class和HelloException.class。這樣,一個EJB就完成了。
下面列出一些常見的問題,若按照上面的步驟操作中出現問題可以參考。
* 按Generate按鈕后沒有出現成功畫面。
1. 請檢查java程序是否載路徑中,ejbframe程序調用java程序來執行生成代碼的java類
2. 請檢查GenFrameCode.class文件是否在ejbframe.exe的同一個目錄下。
* javac編譯代碼出錯
1. 請檢查minij2ee.jar和mail.jar是否在CLASSPATH中,這兩個文件在minij2ee目錄的lib子目錄下。
2. 請檢查程序代碼。
更多的技術文檔,盡在minij2ee技術文檔中心,請訪問 http://www.minij2ee.com/document/
本欄文章均來自于互聯網,版權歸原作者和各發布網站所有,本站收集這些文章僅供學習參考之用。任何人都不能將這些文章用于商業或者其他目的。( ProgramFan.Com )
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -