posts - 66,  comments - 11,  trackbacks - 0
          為創建和銷毀EJB對象,開發者需要使用Home接口。Home接口的實現是Home對象,而Home對象由EJB服務器提供的工具生成。
          package com.wyq.ejb;

          import javax.ejb.EJBHome;
          /**
           * Hello EJB組件的Home接口。它由EJB服務器提供的工具實現。Home接口實現
           * 稱之為Home對象。Home對象充當了創建EJB對象的工廠。
           * 
           * 在該Home接口中,存在create()方法。它對應于HelloBean中的ejbCreate()方法。
           
          */
          public interface HelloHome extends EJBHome {
              
          /**
               * 創建EJB對象,
               * 
          @return 新建的EJB對象。
               
          */
              Hello create() 
          throws java.rmi.RemoteException,javax.ejb.CreateException;
              
          /**
               * 1、為獲得對EJB對象的引用,客戶需要使用create方法。其中,create方法還能夠完成
               * EJB組件的初始化工作。
               * 2、create方法拋出了如下異常:RemoteException和CreateException。由于Home對象是網絡
               * 使能的基于RMI-IIOP的遠程對象,因此要拋出RemoteException異常。
               
          */
          }

          本地Home接口是Home接口的高性能版本。
          package com.wyq.ejb;

          import javax.ejb.EJBLocalHome;
          /**
           * Hello EJB組件的本地Home接口。它由EJB服務器提供的工具實現。
           * 本地Home接口實現稱之為本地Home對象。本地Home對象充當了創建EJB本地對象的工廠。
           *
           
          */
          public interface HelloLocalHome extends EJBLocalHome {
              
          /**
               * 創建EJB本地對象
               * 
          @return 返回新創建的EJB本地對象。
               
          */
              HelloLocal create()
          throws javax.ejb.CreateException;
          }


          創建企業Bean類
          package com.wyq.ejb;

          import java.rmi.RemoteException;

          import javax.ejb.EJBException;
          import javax.ejb.SessionBean;
          import javax.ejb.SessionContext;
          /**
           * 演示無狀態會話Bean.
           *
           
          */
          public class HelloBean implements SessionBean {
              
          private SessionContext ctx;
              
          //EJB規范定義的方法
              public void ejbCreate(){
                  System.out.println(
          "ejbCreate()");
              }
              
          public void ejbRemove() throws EJBException, RemoteException {
                  System.out.println(
          "ejbRemove()");
              }
              
          public void ejbActivate() throws EJBException, RemoteException {
                  System.out.println(
          "ejbActivate()");
              }

              
          public void ejbPassivate() throws EJBException, RemoteException {
                  System.out.println(
          "ejbPassivate()");
              }
              
          /**
               * 由于企業Bean宿主在受管容器中,因此容器能夠在任何時候調用企業Bean的方法。但如果企業Bean
               * 需要查詢容器的當前信息的話,需要為EJB提供何種信息呢?比如在EJB中,組件本身可能需要查詢當前用戶
               * 的安全性憑證信息。
               * 
               * 容器將這些信息包含在稱之為"EJB上下文"的對象中。EJB上下文對象是通往EJB容器的關口。其中,EJB上
               * 下文是容器的組成部分,開發者能夠在企業Bean中訪問到它。因此,在某種程度上,EJB上下文是為企業Bean
               * 訪問容器提供的回調。該回調有助于企業Bean探知其自身的狀態,并修改他們。
               * 
               * EJB上下文對于會話Bean、實體Bean、消息驅動Bean而言很有用。比如會話Bean含有會話上下文、實體Bean
               * 含有實體上下文、消息驅動Bean含有消息驅動上下文。
               * 依據EJB類型的不同,開發者能夠分別通過調用setSessionContext、setEntityContext、setMessageDivenContext
               * 方法設置EJB上下文信息。
               
          */
              
          public void setSessionContext(SessionContext ctx) throws EJBException,
                      RemoteException {
                  
          this.ctx = ctx;
              }
              
          //業務方法
              public String hello(){
                  System.out.println(
          "hello()");
                  
          return "Hello,World!";
              }

          }

          posted on 2009-10-30 13:01 王永慶 閱讀(161) 評論(0)  編輯  收藏 所屬分類: EJB學習筆記
          <2009年10月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          關注blogs

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 天水市| 秭归县| 建始县| 克拉玛依市| 沁源县| 大连市| 黎川县| 寿宁县| 宁安市| 合肥市| 南和县| 香港| 洛南县| 手游| 咸宁市| 海宁市| 前郭尔| 尉氏县| 法库县| 东莞市| 赞皇县| 偃师市| 泾源县| 公主岭市| 巴东县| 广宗县| 化德县| 南乐县| 万山特区| 张家口市| 武穴市| 吉首市| 夹江县| 娄底市| 资中县| 天长市| 盐城市| 晋城| 清新县| 泰州市| 南开区|