<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 18,comments - 26,trackbacks - 0

    EJB是J2EE中最重要的技術之一,它是支持分布式事務的分布式組件,我們以Hello World為例,編寫第一個名為Hello的最簡單的Session Bean。

    根據EJB2.1規范,編寫一個Session Bean需要以下幾個類和接口:

    遠程接口Hello,客戶端使用這個接口來訪問EJB:

    // Hello.java

    // 遠程接口:EJBObject

    import javax.ejb.*;
    import java.rmi.*;

    public interface Hello extends EJBObject {
        // 業務方法,必須拋出RemoteException:
        public String say() throws RemoteException;
    }

    Home接口HelloHome,客戶端使用這個接口來創建EJB并在稍后調用其業務方法:

    // HelloHome.java

    // Home接口,負責創建EJB:

    import java.io.*;
    import java.rmi.*;
    import javax.ejb.*;

    public interface HelloHome extends EJBHome {
        // create方法需要拋出RemoteException和CreateException:
        Hello create() throws RemoteException, CreateException;
    }

    實現業務邏輯的類HelloBean,客戶端永遠無法直接訪問它,只能通過遠程接口來間接訪問它,HelloBean只有一個業務方法:

    // HelloBean.java

    // 實現真正業務方法的Bean,由容器管理,
    // 客戶端通過遠程接口間接訪問它:

    import java.rmi.*;
    import javax.ejb.*;

    public class HelloBean implements SessionBean {
        private SessionContext ctx;
        public String say() {
            return "Hello, world.";
        }
        public void setSessionContext(SessionContext ctx) {
            this.ctx = ctx;
        }
        public void ejbCreate() {}
        public void ejbRemove() {}
        public void ejbActivate() {}
        public void ejbPassivate() {}
    }

    從上面可以看到,為了編寫一個Bean,需要額外的兩個接口支持,并且,由于HelloBean不實現Hello接口,這些方法申明和實現如果不一致,只有在部署時才能發現問題。某些工具(如XDoclet)可以根據特定的注釋自動生成Remote和Home接口。在EJB 3.0規范中,開發者就只需要編寫Bean,剩下的Remote和Home接口都由工具根據EJB 3的注釋自動生成,因此大大簡化了開發。

    為了提高EJB的調用速度,如果客戶端和EJB容器位于同一個JVM內(例如運行在同一個JVM中的JSP和EJB),還可以使用本地接口,但是這兩個接口不是必需的,因此我們不去實現它。

    現在我們一共有3個文件:Hello.javaHelloHome.javaHelloBean.java,放在C:\example目錄下,然后開始編譯:

    C:\example>javac *.java

    在當前目錄下可以找到編譯后的Hello.classHelloHome.classHelloBean.class三個文件。

    下載源碼:點擊下載

    下一步:部署(待續)

    posted on 2005-09-22 19:35 瘦猴 閱讀(152) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 九九久久精品国产免费看小说| 亚洲人成黄网在线观看| 最新亚洲人成网站在线观看| 很黄很色很刺激的视频免费| 91亚洲精品视频| **一级毛片免费完整视| 亚洲国产第一页www| 最近免费中文字幕MV在线视频3 | 精品女同一区二区三区免费播放 | 亚州**色毛片免费观看| 国产无遮挡裸体免费视频| 爱情岛亚洲论坛在线观看 | 国产va免费精品观看精品 | 亚洲天堂中文资源| 三根一起会坏掉的好痛免费三级全黄的视频在线观看 | 亚洲一区精品无码| 久久久久国产精品免费免费不卡| 国产偷v国产偷v亚洲高清| 午夜不卡久久精品无码免费| 久久99亚洲网美利坚合众国| 亚洲视频免费一区| 亚洲色欲啪啪久久WWW综合网| 日韩高清免费在线观看| 日韩在线视频免费| 亚洲福利在线视频| 青春禁区视频在线观看直播免费| 亚洲国产精品无码久久久秋霞1| 国产成人青青热久免费精品| 国产视频精品免费视频| 亚洲天堂中文字幕| 日韩高清在线免费观看| 国产啪精品视频网站免费尤物| 久久亚洲私人国产精品| 免费观看大片毛片| 国产免费人成视频在线播放播| 久久精品国产亚洲AV高清热| 免费无码一区二区三区蜜桃大| 国产无限免费观看黄网站| 91亚洲国产在人线播放午夜| 国产又长又粗又爽免费视频| 18禁在线无遮挡免费观看网站|