EJB三种企业bean

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

EJB三种企业bean
1、会话Bean
用于实现业务逻辑,分为有状态Bean和无状态Bean,有状态Bean可以维护会话状态,无状态Bean不维护会话状态。

要维护会话状态,意味着EJB容器要为每个用户创建一个Bean实例,并通过该实例保存着与用户的会话状态。

不维护会话状态,意味着一个bean实例不需要保存与某个用户的会话状态,这时一个bean实例可以为多个用户服务。

每当客户端发出EJB调用请求,容器就会选择一个Session Bean来为客户端服务。

会话Bean可以直接访问数据库,但更多时候它是通过实体Bean实现数据访问。

开发一个Session Bean,需要定义接口和Bean Class。

接口分为远程(Remote)和本地(Local)接口,EJB3.0中不需两者都实现,但两者都实现比较好。

远程接口:定义了Session Bean的业务方法,这些方法可以被EJB容器之外的应用访问到。

本地接口:定义了Session Bean的业务方法,这些方法可以被同处于EJB容器内的其他应用使用。

因为Local接口允许bean之间直接通过内存交互,没有分布式对象协议的开销,从而改善了性能。

Bean类(bean class):包含了业务逻辑,必须具备一个远程或本地接口。

在bean里我们应该实现接口的业务逻辑,尽管不是必须的,但我们没有理由不这么做。

2、实体Bean
代表真实物体的数据,在EJB3.0中,它仅作为普通Java对象来使用,它负责跟数据库表进行对象与关系映射(O/R Mapping)。

如果实体Bean对象需要返回客户端,必须实现Serializable接口。

3、消息驱动Bean(MDB)
是设计用来专门处理基于消息请求的组件。

它能够收发异步JMS 消息,并能够轻易地与其它EJB交互。

它特别适合用于当一个业务执行的时间很长,而执行结果无需实时向用户反馈的这样一个场合。

相关文档
最新文档