JavaBean组件不是EJB组件,他们没有任何的关系
是什么,能干什么
EJB:企业级JavaBean,一种规范(描述了构建应用组件要解决的),JEE组件技术,主要是做大型分布式应用程序。分布式指从服务器上拿业务,分布式把代码分成多个服务器上,通过一台调用另外一台。
有什么:
会话Bean(Session Bean)
实体Bean(Entity Bean)
消息驱动Bean(MessageDriven Bean)。
1.Session Bean:
用于实现业务逻辑,它可以是有状态的,也可以是无状态的。
1.1、(Stateless Session Bean) 无状态会话Bean:SLSB, 只产生一个类对象。
无状态会话Bean没有中间状态。它们不保持追踪一个方法调用另一个方法传递的信息。因此一个无状态业务方法的每一次调用都独立于它的前一个调用;
1.2、(Stateful Session Bean) 有状态的会话Bean:SFSB,就像每次new一个对象
一个有状态的会话Bean维护一个跨越多个方法调用的会话状态;
2.Entity Bean: Model持久化到数据库
是域模型对象,用于实现O/R映射,负责将数据库中的表记录映射为内存中的Entity对象
3.MessageDriven Bean: 用于解决异步通信
是EJB2.0中引入的新的企业Bean,它基于JMS消息,只能接收客户端发送的JMS消息然后处理,用于异步消息处理
为什么需要EJB?
可扩展 (Scalable)
分布式 (Distributed)
事务处理 (Transactional): 容器事务管理
数据存储 (Persistent) : 持久化 JPA
安全性 (Secure) : 自动具有安全管理功能
EJB 架构
为了满足架构的目标,规范中描述了
服务器 (Server)
容器 (Container)
类 (Class) 和实例 (Instance)
Home(本地组件) 和 Remote(远程组件) 接口
客户端 (Client)