首页 > 代码库 > j2ee规范——EJB

j2ee规范——EJB

1、EJB是什么


商务软件的核心部分是它的业务逻辑。业务逻辑抽象了整个商务过程的流程,并使用计算机语言将他们实现。

……
J2EE 对于这个问题的处理方法是将业务逻辑从客户端软件中抽取出来,封装在一个组件中。这个组件运行在一个独立的服务器上,客户端软件通过网络调用组件提供的服务以实现业务逻辑,而客户端软件的功能单纯到只负责发送调用请求和显示处理结果。在J2EE 中,这个运行在一个独立的服务器上,并封装了业务逻辑的组件就是EJB(Enterprise JavaBean)组件。


2、通俗一点对于EJB的理解 


把编写的软件中那些需要执行制定的任务的类,不放到客户端软件上了,而是给他打成包放到一个服务器上了。EJB 就是将那些"类"放到一个服务器上,用C/S 形式的软件客户端对服务器上的"类"进行调用。


3.EJB分类

有状态会话bean


一种保持会话状态的服务。每个实例都与特定的客户机相关联,在与客户机的方法调用之间维持对话状态。EJB服务器崩溃后不再保存,出发配置 failover。

无状态会话bean


不保存与特定客户的对话状态。因此状态会话Bean比无状态会话 Bean具有更多的功能,而无状态会话Bean实例可以通过 EJB容器自由地在客户机之间交换,从而少量的会话Bean就可以服务于大量的客户机。EJB服务器崩溃后不要在保存。


实体bean


1.是持久性数据在内存中的体现


2.应用服务器崩溃后能够恢复


3.可以支持来自多个客户的并发访问


4.是同步的


消息驱动bean


1.在消息之间不维持状态的异步组件


2.是JMS消息的使用


4、EJB接口:EJB有两个可由用户使用的远程接口


Home接口


支持客户端应用创建、删除、或定位EJB的实例,其设计原则


1.必须继承EJBHome 接口


2.定义每一个create方法,都必须在相应的EJB类中有一个对应ejbcreate方法


3.遵循java RMI的规则


4.定义方法的参数,应该是合法的java RMI类型参数


5.应该抛出CreateException,RemoteException

<span style="font-family:KaiTi_GB2312;font-size:18px;">//Home接口定义
public interface DemoHome extends EJBHome
{
	public Demo create(long x)throws RemoteException,CreateException;
}

</span>

<span style="font-family:KaiTi_GB2312;font-size:18px;">//EJB类定义
public class DemoBean extends SessionBean
{
	public  void ejbCreate(long x)throws CreateException,UserExce2
	{
		//具体实现
	}
}</span>


Remote接口


Remote接口定义了EJB提供的商业方法,其设计原则:


1.必须继承EJBObject 接口


2.定义每一个方法,都必须在相应的EJB类中有一个对应方法


3.遵循java RMI的规则


4.定义方法的参数,应该是合法的java RMI类型参数


5.抛出RemoteException。

//Remote接口定义
public interface Hello extends EJBObject
{
	String busMethod1(long l,String str)throws RemoteException,UserExcep1;
}

//EJB类定义
public class DemoBean extends SessionBean
{
	String busMethod1(long l,String str)throws UserExcep2
	{
		//具体实现
	}
}

总结

    对于EJB的学习只是从最基础去了解它,了解到了它到底是什么,它的分类,它的远程接口。以及远程接口与EJB分类的的结合。后面关于EJB的学习还有很多,慢慢去体会,会有更多的收获。

j2ee规范——EJB