Enterprise JavaBeans组件慨述之三

布署和使用 Enterprise JavaBeans 组件

本文的第 3 部分说明 Enterprise JavaBeans 组件的部署过程,部署并不仅仅是安装,因为它通常还涉及代码生成。部署还使用了一个特殊的部署描述符文件,此文件支持控制企业级 bean 行为(如某个 bean 是否需要事务)的参数。bean 部署的这一特性支持 bean 行为的说明性、纲领性规范的 EJB 目标。第 3 部分还比较了持久性的两种主要类型,bean 管理式持久性和容器管理式持久性,并讨论了 EJB 组件与 CORBA 的关系。同时还给出了一个简单的三层 EJB 应用程序。

部署过程

Enterprise JavaBeans (EJB) 组件是在称为部署的特定过程中安装的。由容器组件提供对部署过程的支持。在高级别上,部署由下列步骤组成:

bean 的开发人员创建必需的类文件、接口文件和控制信息。

容器分析输入文件并生成必要的类。

容器将条目添加到指向本地对象的 JNDI 命名空间中。

EJB 组件的开发人员编写 bean 的 Java 源文件,此文件包含为这个 bean 提供功能的业务逻辑方法,还包括 ejbCreate() 方法。bean 类还必须实现 javax.ejb.SessionBean 接口或 javax.ejb.EntityBean 接口。此外,bean 的开发人员编写接口文件,定义对 javax.ejb.EJBHome 接口和 javax.ejb.EJBObject 接口的扩展。EJBHome 接口的扩展,称为 bean 的本地接口,包含一个创建方法,并且如果 bean 是一个实体 bean,它还会包含一个 finder 方法。EJBObject 接口的扩展,称为 bean 的远程接口,指定在 bean 本身中定义的业务逻辑方法。

bean 的开发人员提供由部署描述符、环境属性和清单式文件组成的控制信息。

部署描述符是 javax.ejb.deployment.SessionDescriptor 对象或 javax.ejb.deployment.EntityDescriptor 对象的序列化实例。

环境属性作为键-值对存储在一个文件中,可通过 java.util.Properties 对象访问此文件。

清单式文件是标识企业级 bean 及其相关文件所必需的。

企业级 bean 的类文件、这两个接口的类文件、部署描述符文件、环境属性文件和清单式文件都是使用名为 ejb-jar 的文件格式归档的。所生成的 ejb-jar 文件提供给容器,作为部署过程的输入。

在部署时,容器分析 ejb-jar 文件的内容,并采取必要的操作使此 bean 可用。这些操作包括:生成实现 bean 的本地和远程接口的新 Java 类,将本地接口实现绑定到 JNDI 命名空间中,生成桩模块和 skeleton helper 类,后者是支持 RMI 通信所必需的。容器也可以生成 bean 的子类,并入容器专用的代码,以方便对 bean 的管理。部署时由容器生成的类通常是容器专用的,而不像 EJB 组件本身那样具有可移植性。

时间: 2025-01-02 01:55:32

Enterprise JavaBeans组件慨述之三的相关文章

Enterprise JavaBeans组件慨述之二

EJB 编程模型 本文的第二部分说明创建 Enterprise JavaBean 组件所需的 Java 接口和类的作用.除了对 bean 类本身进行编码外,EJB 开发人员还必须为 bean 定义一个本地接口和一个远程接口.这些接口的实现类通常由容器生成,因此部署 EJB 组件是开发人员和 EJB 容器的合作行为.第二部分还区分了 enterprise bean 的两种主要类型,即会话 bean 和实体 bean,并说明了 EJB 容器和 EJB 服务器之间的关系. enterprise bea

Enterprise JavaBeans组件慨述之一

本文概述 Enterprise JavaBeans (EJB) 技术,旨在让读者快速理解基本概念.第 1 部分讲述 EJB 技术的历史和某些目标.优点和技术.为了简洁明了,有选择地讲述EJB 技术的一些关键要素.请注意,虽然 EJB 组件依赖于一些基础的 Java 服务(如 Java Transaction Service),但使用 EJB 组件及认识这些组件的好处并不需要掌握这些相关技术的知识. Enterprise JavaBeans 技术自 1998 年 3 月问世以来很受好评.下面这段话

Enterprise JavaBeans入门

EJB(Enterprise JavaBeans)可不算什么新概念了,但许多人在听到或者看到这个名词的时候还会眼晕.EJB组件在J2EE规范中自成一层,把应用程序的表示层和后端信息系统(比如数据库或者主框架计算机)捆绑了起来.EJB架构既用到了EJB对象的功能又利用了它们所运行的环境. 为什么出来个EJB 从概念上看,EJB对象封装了业务对象及其概念,让开发人员把精力集中于解决方案的细节之上.从设计的角度看,EJB应该轻便而相互影响地合并起来.这一举措可以令单一的EJB,不论其是否为商务应用程序

Oracle PL/SQL入门慨述_oracle

正在看的ORACLE教程是:Oracle PL/SQL入门慨述.一.PL/SQL出现的目的 结构化查询语言(Structured Query Language,简称SQL)是用来访问关系型数据库一种通用语言,它属于第四代语言(4GL),其执行特点是非过程化,即不用指明执行的具体方法和途径,而是简单的调用相应语句来直接取得结果即可.显然,这种不关注任何实现细节的语言对于开发者来说有着极大的便利. 然而,对于有些复杂的业务流程又要求相应的程序来描述,那么4GL就有些无能为力了.PL/SQL的出现正是

HTML组件(HTML COMPONENTS)之三

===最顶级页面=== 现在我们将我们注视的焦点转向我们的日历应用例子,该应用包括4个不同页面,canlendar.html为最顶级HTML文档,该页包含了calendar.htc HTC,而canlendar.htc有反过来包含两个别的HTC:day.htc和today.htc,calendar.html 内容如下: Click a day in the calendar to add or modify your schedule. <?XML:NAMESPACE PREFIX = MYCA

深入探索CORBA对象生命周期之慨述

在服务器端,服务器的ORB在运行时从网络读取请求,并通过调用在第一个安装的消息拦截器上的receive_message( )开始处理请求.ORB用对象关键词以标识目标必须含有POA的名字,通过POA才能到达该对象.找到正确的POA后,下一步是寻找对象本身,这个工作如何完成取决于为对象的POA定义的策略.如果对象能够定位,ORB通过调用在第一个安装的请求拦截器上的target_invoke( )来继续处理请求,拦截器则使用DII函数invoke( )来依次继续处理请求,这在客户端中已经讨论过.这里

ASP.NET 2.0页面框架简要慨述

ASP.NET Web窗体页面框架组件是一个可缩放的通用语言运行时编程模型,它可以用于动态地生成Web页面.ASP.NET页面框架组件是ASP的合理进化(ASP.NET提供的语法与已有的页面是兼容的),它被特意地设计用于解决早期模型中的大量的关键的缺陷.特别是,它提供了建立和使用可供重复使用的(reusable)UI控件的能力,这些控件可以封装公用的功能,从而减少了页面开发者需要编写的代码数量:它使开发者能够清晰有序地构造页面逻辑(并非"缠绕在一起的代码"):它使用的开发工具提供了强大

Java程序设计基础入门之慨述

现在,Java技术已经风靡全球,就连环球信息网WWW的创始人也说:"计算机行业发展的下一个浪潮就是Java,并且很快就会发生." SUN公司也声称,J2EE 1.4代表了"迄今为止最完美的网络服务平台". 现在,Java程序已经无处不在,就连手机都成了Java的活动舞台.2004年的二级计算机等级考试也新增Java程序设计科目. "当我们面临多种数字化产品浪潮的时候,跨平台.数字平移肯定会成最热的技术!"这是我们送给读者的话.所以,就让我们品味J

J2EE的Web服务原理和体系结构慨述

Web服务(Web Services)是目前程序设计领域中的一项新技术,是一个崭新 的分布式计算模式,在不同系统平台之间具有互操作性,通过因特网,实现不同 应用程序之间的远程过程调用.Web服务使用基于XML 的消息处理作为基本的数 据通讯方式,消除使用不同组件模型.操作系统和编程语言的系统之间存在的差 异,使异类系统能够作为单个计算网络协同运行.开发人员可以用象过去在创建 分布式应用程序时使用组件一样的方式创建将来自各种源的Web服务组合在一起 的应用程序. Web服务是建立在一些通用协议的基