快速业务通道

企业JavaBeansTM技术介绍 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-25
对象开始对话期的; 该对象可代表客户执行一项工作, 有可能包括多重数据库事务;在第二个模型中, 客户访问一个对象, 这个对象代表了数据库中的一个实体。EJB的设计适用性很广, 它包括了这两种模型:

Session Beans包括了第一种模型。一个Session Bean是一个对象, 它代表了与客户的一个瞬时对话, 并为客户执行数据库读写操作;这些数据库的访问是在一个事务处理过程中实现的。一个Session Bean的字段包括对话的状态且是瞬时的,之所以如此的意义在于, 一旦服务器或客户崩溃, Session Beans就不存在了。该模型典型地用于数据库编程语言, 如PL/SQL。

Entity Beans包括了第二种模型。一个Entity Bean与作用于一个数据库中的数据的方法一起代表了这些数据。在关系型数据库中, 例如一个雇员信息表格, 表中的每一行都有一个Bean。Entity Beans是事务型的且长寿, 只要数据库中的数据存在, 则Entity Bean就存在。该模型大多数典型地应用于面向对象的数据库中。

请注意在EJB规范中, 支持Session Beans是强制性的, 而支持Entity Beans在目前是选择性的; 但在EJB规范2.0版中, 它将成为强制性的。

EJB 结构

上图显示了EJB技术的体系结构。EJB规范支持任何类型的客户, 因为该规范不强制要求任何远程对象的"网线"协议;这就意味着一个服务器可支持多种协议, 如RMI、IIOP(CORBA)和DCOM等;它也说明, 一个EJB服务器的客户程序不一定要用Java语言来编写。

EJB服务器实际是各种支持EJB安装的服务的集合, 这些服务包括分布式事务管理、分布式对象管理和对这些对象的分布式调用以及低层次系统服务。简而言之, EJB服务器管理那些支持EJB组件所需要的资源。一个EJB服务器提供商可提供一个容器的实现(详情见后), 他也可以为第三方厂商提供API以使其能嵌入附加EJB容器。EJB规范在服务器的设计和实现上给了开发人员以极大的自由。

EJB服务器正象是EJB组件的一个家, 而容器则是Bean生活的地方, 就象是一个记录"生活"在数据库中一样。它提供了一个可升级、安全和事务性的环境, 在该环境中Bean可以操作。处理对象生命周期(包括创建和销毁一个对象)的正是容器。容器也负责Bean的状态管理。

容器对客户是透明的, 容器上没有客户API。当一个Bean被安装在容器中时, 该容器提供两种实现: Bean的EJBHome接口的实现(详情见后)和Bean的远程接口的实现。容器也负责保证在JavaJNDI 中能够获得Bean的EJBHome接口。

要构造一个Bean, 你必须首先实现商务方法。 例如, 如果你正在编写一个帐目检查Bean, 你可能要实现一个"借方"方法用来作为接口的一部分;你还必须实现两种类型的EJB接口之一 --Session Bean或Entity Bean;这些接口包括了诸如与工作设置管理相关的方法并且不暴露给客户。

当把一个Bean安装在服务器上时, 远程接口(在CORBA中通常称作skeleton)则被自动生成。远程接口的实现被称为EJBObject, 它只将程序员指定的远程接口暴露出来。尽管企业Bean类包含了同样的方法, 但它并不实现远程界面。 EJBObject的作用就象是一个代理人, 它截取远程对象调用并调用企业Bean实例中的适当的方法。

一个EJB容器可实现安装在该容器中的每个企业Bean的EJBHome接口, 它允许Bean的创建和清除, 并且可查询有关Bean的信息或"元数据"。该容器使客户通过JNDI便可获得EJBHome接口。对Entity Beans来说, EJBHome接口也包含了一个或多个"finder"方法, 使客户用一个主键即可查询有关Bean的信息。

企业JavaBeansTM技术介绍(3)

时间:2008-05-07

特性

应用程序开发人员所面临的最复杂的问题之一是编写分布式事务应用程序。EJB技术的一个主要特性就是它对分布式事务的支持;EJB技术使你可编写访问跨越多个EJB服务器的多重分

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号