您的位置:首页 > 其它

EJB课堂剪辑--好东西大家分享

2007-05-06 08:03 190 查看
一:EJB概要介绍:EJB(Eenterprise Java Bean)是一种服务器端组件,它包含了企业应用的业务逻辑,在运行环境中,企业应用客户程序通过调用EJB组件的方法来执行业务.
这就是EJB的定义也是EJB的介绍 EJB必须发布到EJB容器中,才能运行 EJB容器由服务器提供商提供
EJB有三大优点:
一:被业界认可 使用EJB的人都可以受益于它的使用价值
二:移植性容易实现
三:快速应用系统开发
讲EJB的组成: 六部分
EJB组件供应商
负责开发封装有商务规则的EJB组件; 定义EJB组件的HOME接口和REMOTE接口、编写组件类并且提供部署EJB组件的部署文件
二是EJB容器供应商
EJB组件应用运行所需要的底层运行环境; 为EJB组件开发者提供了一组标准的API来访问EJB容器
STRUTS河马(395640875) 21:25:54
三EJB服务器供应商 通常由操作系统开发商、中间件开发商、或数据库开发商提供;
现在市场较流行的EJB服务器主要有WEBLOGIC、WEBSPHERE、APPSERVER、JBOSS
四应用系统组装商:负责将各种类型的EJB组件组合成一个完整的应用系统;
五 EJB系统部署员:负责将打包后的EJB组件部署到EJB服务器等应用环境中;
部署员应该根据EJB组件的部署文件中声明的对各种类型的数据的需求来配置EJB服务器来为组件服务
六 系统管理员:负责为EJB服务器和EJB容器提供一个企业级的计算环境并利用EJB服务器和EJB容器提供的监测工具监测EJB组件的运行情况。
在国内大部分公司, 一般来说,程序员承担了系统组装商和EJB组件供应商的角色。
有些公司,开发人员也承担了EJB系统部署员和系统管理员的职责
三:EJB的类型:
现在EJB一般分三种:
第一实体BEAN(Entity Bean):实现一个业务实体实体BEAN的意义在于将底层的数据以对象的形式表现出来,供商务过程组件调用
第二:消息BEAN(Message Bean):通过创建独立的应用程序来作为事件监听器接受事件消息,在对接受的事件消息内容进行分析和处理后,调用其他会话或实体类型EJB组件中的方法。
第三会话BEAN(Session Bean):实现会话中的业务逻辑; 执行商务逻辑、规则、工作`流程 它又分两种无状态会话BEAN和状态会话BEAN
无状态会话BEAN:处理单一请求的过程,不需要了解客户的历史。不需要保存当前用户的任何信息。
状态会话BEAN:是为处理多个请求和事务处理的商务过程而设计的。需要维持客户的状态,并为下个请求服务。
现在实体BEAN的性能让业界无法忍受。所以很多EJB项目都没用实体BEAN
四EJB组件的文件
一个EJB组件至少包含三个JAVA文件:
Remote接口:定义了客户程序可以调用的方法;
Home接口:定义了创建、查找、删除EJB的方法;
Enterprise Bean类:实现了远程接口的方法。这是EJB必须的
五EJB服务和EJB容器必须提供的一些服务有:
1:隐含的分布式事务管理
2:透明的资源管理和组件生存期管理机制
3:安全权限控制
4:持久化机制
5:隐含的远程访问机制
6:透明的组件定位服务
就刚才的问题,为什么实体bean性能很差?
实体BEAN又分为:BMP(Bean-managed persistent entity bean)和CMP(Container-managed persistent entity bean)
BMP是管理持久性实体BEAN,需要开发者自己编写符合EJB规范的实现代码,实现各种业务方法和管理方法
CMP是容器管理持久性实体BEAN,开发者不需要自己编写代码来实现持久性管理
对于为什么实体bean性能很差
主要是是实体BEAN完成的是一个超级ORM(也就是对象关系映射)
作为J2EE得当核心组件代表存储在外部介质中的持久化对象或企业应用系统资源
必须实现JAVAX。EJB。ENTITYBEAN接口 简单点实体BEAN相当于数据库信息 但二者不等价
因此可以理解为一个对象关系映射,不过这个对象关系映射后面是整个J2EE体系的支持
而这也就带来了EJB的确缺点 :系统开发复杂 复杂导致的就是系统性能差 这基本是整个业界的观点
这6点其实就是ejb的精髓,这其实就是在以后学ejb的过程中慢慢掌握的。现在看的一头雾水没关系,先强行记住。
ejb是一套思想体系,这套思想体系的核心就是将传统的中间件,例如mq,texudo等用隐式方法提供给你。
细节先不用那么关心,先把这些概念强记下来。以后在实例中一步一步学习。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: