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

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

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

    posts - 30,  comments - 85,  trackbacks - 0

             本文是為想在JBOSS環(huán)境下進(jìn)行EJB開(kāi)發(fā)的讀者而寫的,在閱讀本文之前,你最好對(duì)EJB有一個(gè)基本了解。

      JBOSS是一個(gè)開(kāi)放源碼的免費(fèi)EJB服務(wù)器,它實(shí)現(xiàn)了其它J2EE所規(guī)定的大多數(shù)功能,現(xiàn)在sun公司已經(jīng)把JBOSS作為J2EE1.4的標(biāo)準(zhǔn)實(shí)現(xiàn)服務(wù)器了。    

            以下是我從源代碼中摘出來(lái)的部分注釋,請(qǐng)結(jié)合工程文件查看。
            /Files/anwenhao/EJBDemo.part1.rar
            /Files/anwenhao/EJBDemo.part2.rar
            /Files/anwenhao/EJBDemo.part3.rar
            /Files/anwenhao/EJBDemo.part4.rar


     /**
     * 遠(yuǎn)程接口
     *
     * 遠(yuǎn)程接口支持EJB組件暴露的所有業(yè)務(wù)方法.
     * 遠(yuǎn)程接口集成于EjbObject 容器生成的EJB對(duì)象繼承了遠(yuǎn)程接口EjbObject
     *
     * 遠(yuǎn)程接口中實(shí)現(xiàn)的方法即為業(yè)務(wù)方法.
     *
     * 
     */

    /**
     * EJB組件的home接口
     * 在該home接口中存在create()方法. 對(duì)應(yīng)于HelloBean中的ejbCreate()方法
     *
     * 為獲取對(duì)EJB對(duì)象的引用客戶需要使用create方法.其中create方法還可以幫助組件完成初始化工作.
     * create方法需要拋出以下異常:RemoteException CreateException
     *
     * 所有的Home接口必須繼承于他.
     *
     * 同時(shí)EJBHome接口已經(jīng)定義了組件銷毀remove()的方法,因此具體的Home不需要再次定義.
     *
     *
     */

    /**
     * 本地接口
     *
     * 當(dāng)本地用戶client同EJB本地對(duì)象交互時(shí),需要使用這一接口.容器廠商會(huì)實(shí)現(xiàn)這一接口而對(duì)應(yīng)的實(shí)現(xiàn)對(duì)象就是EJB本地對(duì)象
     *
     * 本地接口需要繼承EJBLocalObject 與遠(yuǎn)程接口的差別是本地接口并不拋出RemoteException
     *
     *
     */

    /**
     * 本地home接口.
     *
     * 本地home接口是home接口的高性能版本.本地home接口繼承于EJBLocalHome而不是EJBHome.EJBLocalHome并不繼承于Remote其意味著本地home對(duì)象并不是遠(yuǎn)程對(duì)象.
     *
     *
     *
     * 
     */

    /**
     * 無(wú)狀態(tài)的SessionBean.
     *
     * 無(wú)狀態(tài)的Bean實(shí)現(xiàn)了SessionBean接口.供實(shí)現(xiàn)會(huì)話的bean試用.其中SessionBean定義了企業(yè)Bean類必須實(shí)現(xiàn)的若干方法.
     * 存在ejbCreate()方法.同Home對(duì)象的create()方法一致.
     * 并且必須存在相關(guān)的業(yè)務(wù)方法.
     * 無(wú)狀態(tài)的SessionBean并不會(huì)試用到ejbActive()和ejbPassivate()方法.
     *
     *
     * @author 安文豪 anwenhao@risesoft.net Jun 3, 2007 2:31:08 AM
     */


    package com.ibm.ejb.test;

    import java.io.File;
    import java.io.FileInputStream;
    import java.io.IOException;
    import java.util.Properties;

    import javax.ejb.CreateException;
    import javax.ejb.RemoveException;
    import javax.naming.Context;
    import javax.naming.InitialContext;
    import javax.naming.NamingException;
    import javax.rmi.PortableRemoteObject;
    /**
     * 客戶端代碼示例.用于調(diào)用簡(jiǎn)單,無(wú)狀態(tài)SessionBean中的方法.
     */
    public class HelloClient {

     public static void main(String[] args) throws NamingException, CreateException, RemoveException, IOException{
      Properties prop = new Properties();
      File file = new File("ejbconfig.properties");
      FileInputStream input = new FileInputStream(file);
      prop.load(input);
      /**
       * 獲得JNDI初始上下文
       * 初始上下文是鏈接JNDI樹的入口.借助環(huán)境屬性能夠完成JNDI驅(qū)動(dòng),服務(wù)器的網(wǎng)絡(luò)地址等的設(shè)置.
       */
      Context ctx = new InitialContext(prop);
      Object obj = ctx.lookup("Hello");
      /**
       * 獲得Home對(duì)象的引用.
       */
      HelloHome helloHome = (HelloHome)PortableRemoteObject.narrow(obj,HelloHome.class);
      /**
       * 使用工廠來(lái)創(chuàng)建Hello Ejb對(duì)象
       */
      Hello hello = helloHome.create();
      /**
       * 調(diào)用EJB對(duì)象的Hello方法.他將委派給EJB Bean類實(shí)例
       * 一旦接受到響應(yīng)結(jié)果他便會(huì)返回.
       */
      System.out.println(hello.hello());
      hello.remove();
     }

    }


    posted on 2007-06-03 03:05 安文豪 閱讀(1550) 評(píng)論(1)  編輯  收藏

    FeedBack:
    # re: EJB完整示例
    2007-06-04 16:05 | 壞男孩
    寫的好啊,頂  回復(fù)  更多評(píng)論
      

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     

    <2007年6月>
    272829303112
    3456789
    10111213141516
    17181920212223
    24252627282930
    1234567

    常用鏈接

    留言簿(6)

    隨筆檔案(28)

    文章分類(3)

    文章檔案(4)

    最新隨筆

    搜索

    •  

    積分與排名

    • 積分 - 86468
    • 排名 - 666

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 亚洲av无码专区亚洲av不卡| 国产黄在线观看免费观看不卡| 亚洲中文字幕久久精品无码VA| 一本久久免费视频| 亚洲AV无码一区二三区| 最近中文字幕完整免费视频ww | 日韩精品无码人妻免费视频| 无遮挡国产高潮视频免费观看| 天天看免费高清影视| 久久亚洲中文字幕无码| 亚洲av永久无码精品秋霞电影影院| 狠狠入ady亚洲精品| 亚洲国产美国国产综合一区二区| 免费观看在线禁片| 精品亚洲福利一区二区| 亚洲人成影院在线| 亚洲精品偷拍视频免费观看| 四虎影视在线永久免费观看| 成人男女网18免费视频| 我的小后妈韩剧在线看免费高清版| 亚洲av永久中文无码精品综合| 国产午夜亚洲精品理论片不卡| 97在线视频免费播放| 国产免费无码一区二区| 精品国产免费一区二区三区| 国产高清对白在线观看免费91 | 中出五十路免费视频| 日本一区二区在线免费观看| 亚洲AV无码专区国产乱码不卡| 久久精品亚洲福利| 亚洲国产午夜福利在线播放| 亚洲国产精品一区二区三区久久| 国产高清免费视频| 日本免费人成在线网站| 一色屋成人免费精品网站| 毛片免费全部播放无码| 日本在线高清免费爱做网站| 亚洲第一成年免费网站| 女人张开腿给人桶免费视频| 国产精品麻豆免费版| 亚洲国产精品激情在线观看|