电话:0731-83595998
导航

对EJB中SessionBean的见解

来源: 2017-12-13 14:43

 一.Enterprise Beans

  在EJB(Enterprise Java Beans)中定义了两种不同类别的Enterprise Bean :  *会话 Bean (Session Bean) 
1. 会话 Bean (Session Bean) 
A. 状态会话 Bean (Stateful Session Bean) 
1.1 状态会话 Bean (Stateful Session Bean) 
1.2无状态会话 Bean (Stateless Session Bean) 
2. 实体Bean (Entity Bean) 

  二. 会话 Bean (Session Bean)

  Ejb的执行过程是被放在一个EJB容器中进行的,所以客户端不会直接调用我们写好的Enterprise Bean ,而是调用EJB容器生成的一个EJBObject (EJB对象)来实现。那么,我们在编写服务器端的Enterprise Bean 时,就要考虑这点。既然客户端不能直接访问,就由EJBObject来代劳,所以在编写服务器端时,就要编写服务器端的一个接口(Remote)用来与客户机联系,实力化EJBObject。要生成EJBObject 就要调有Home 接口,来建立这个实力。  以下是会话 Bean 的代码分析: 
1.setSessionContext(SessionContext ctx)方法 
import java.rmi.*; 
public class sailorsy implements SessionBean{ 
public voic setSessionContext(SessionContext ctx){ 
}//setSessionContext 
2.ejbCreate(…)方法 
import java.rmi.*; 
public class sailorsy implements SessionBean{ 
public voic setSessionContext(SessionContext ctx){ 
}//setSessionContext 
}//ejbCreate 
3.ejbPassivate()方法 
import java.rmi.*; 
public class sailorsy implements SessionBean{ 

  public voic setSessionContext(SessionContext ctx){ 
}//setSessionContext

  public void ejbCreate() { 
public void ejbPassivate() { 

  }//class sailorsy

4.ejbActivate()方法 
import java.rmi.*; 
public class sailorsy implements SessionBean{ 

  public voic setSessionContext(SessionContext ctx){ 
}//setSessionContext

  public void ejbCreate() { 
public void ejbPassivate() { 

  public void ejbActivate() { 

  }//class sailorsy 
它可以清除EJB容器中的Bean。 
import javax.ejb.*; 
private SessionContext ctx=null;

  public voic setSessionContext(SessionContext ctx){ 
}//setSessionContext

 

  public void ejbCreate() { 

  public void ejbPassivate() { 

  public void ejbActivate() { 

  public void ejbRemove() { 

  public String showname(){ 
}//自己的商务方法 
以上这些是EJB必需的回调方法,我们可以在里面加入自己的方法,加入自己的商务逻辑。 
import java.rmi.*; 

  public interface sailorsyHome extends EJBHome { 

import java.rmi.*; 

  public interface sailorsyRemote extends EJBObject { 
}

三.调用会话 Bean:sailorsyTestClient1

  import javax.naming.*; 
import javax.rmi.PortableRemoteObject; 

  public class sailorsyTestClient1 { 

  //Construct the EJB test client 
try { 
Context ctx = new InitialContext();

  //look up jndi name 

  //cast to Home interface 

  } 
e.printStackTrace(); 
}

  //----------------------------------------------------------------------------
//----------------------------------------------------------------------------

  public sailorsyHome getHome() { 

  public static void main(String args) throws Exception{ 
sailorsyRemote sr=client.getHome() .create() ; 
System.out.print(s); 
// methods that will return a Remote interface reference. Then 

以上的EJB在win2000+jbuilder5/jbuilder6+BAS4.5经过测试。

编辑推荐:

下载Word文档

温馨提示:因考试政策、内容不断变化与调整,长理培训网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准! (责任编辑:长理培训)

已有 22658 名学员学习以下课程通过考试

网友评论(共0条评论)

请自觉遵守互联网相关政策法规,评论内容只代表网友观点!

精品课程

更多
10781人学习

免费试听更多

相关推荐
图书更多+
拼团课程更多+
热门排行
  • 长理培训微信公众号
    每日推送精彩考试资讯
    长按二维码识别
    微信搜索“ 长理培训
  • 加入QQ群一起来考国网!
    QQ群号:223940140
    点击进入

长理培训客户端 资讯,试题,视频一手掌握

去 App Store 免费下载 iOS 客户端