<b>衡量Apache Geronimo EJB事件选项,第1部份: 容器管理事件</b>[Java编程]
本文“<b>衡量Apache Geronimo EJB事件选项,第1部份: 容器管理事件</b>[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
本系列分为三部份,将摸索 Apache Geronimo 中的 Enterprise Java™Beans (EJB) 容器管理事件和 bean 管理事件.在第 1 部份中,将找出两种事件之间的差别,此中包含理解容器管理事件若何帮忙您避免事件逻辑和管理的复杂性,从而使您可以专注于企业 bean 的业务逻辑.您还将学会如安在 Geronimo 利用服务器中实现容器管理事件,以及若何利用 Geronimo、OpenEJB 和 XDoclet 将自己从沉重的 EJB 编码工作中约束出来.
简介
OpenEJB 是为 Apache Geronimo 选定的 EJB 容器实例.固然 EJB 3.0 目前已经面市,但直到公布 Geronimo 2.0 版,在 Geronimo 承受 Java 1.5 认证时,Geronimo 才支持 EJB.
本系列分为三部份,将使您理解 Geronimo 和 OpenEJB 可认为您供应什么帮忙,以及在 EJB 2.1 中目前可以实现的 EJB 事件概念(让您顺利进入 EJB 3.0).
EJB 框架供应的好处是:可以利用事件,但没有事件 API 编程的痛楚.在实现 EJB 事件时,您有两种挑选:
奉告 EJB 容器处理全部的硬性事件工作(容器管理的事件).
让企业 bean 处理一部份事件工作(bean 管理的事件).
在本系列的第 1 部份中,将从事件的概述开始,然后谈论 EJB 2.1 中描写的 EJB 容器管理的事件.最后用一些代码片断完毕介绍,这些代码将显示如安在 Geronimo 利用服务器上实现容器管理的事件.
在第 2 部份中,将得到 EJB 2.1 中 bean 管理的事件的概述,并查看一些示例代码实现.
在第 3 部份中,将综合这两种事件,并理解与容器管理的事件和 bean 管理的事件有关的难题和附加特点.
事件—— 概述
什么是事件?为什么它们如此重要?可以考虑一下银行事件这个非常简单的案例:将 100 美圆从您的一个活期存款帐户转移到您的储备存款帐户.通过进一步的调查,可将这一操作分化为两个更小的操作:
银行从您的活期存款帐户减去 100 美圆.
银行在您的储备存款帐户增添 100 美圆.
假如银行将活期存款额削减 100 美圆,但您的储备存款额并没有增添 100 美圆,那么您大概会感到有点懊丧.就个人而言,我乐意将两个操作视为一个操作.因此,假如您的储备存款帐户从没有增添 100 美圆,那么 100 美圆也决不该从您的活期存款帐户中减去!
近似地,在利用历程中,很多业务案例都是举行整体确认的 (all-or-nothing approach).一些大的操作由一个或多个更小的步骤构成.为了完成操作,操作中的全部 步骤都必须完成或不完成,这种行为称为原子 行为.
原子性是事件必须保证的四个特点(或属性)之一.其他三个属性是:
一致性
断绝性
经久性
这四种属性一同被称为 ACID 属性.
ACID 属性
事件对这些已知 ACID 属性的描写为:
事件是原子的.全部操作都被认为是一个工作单元.像前面谈论的那样,是整体确认的.
事件是一致的.在履行事件之后,必须将系统保持在一致(或合理)状况下.合理状况的定义取决于系统.按照早先的示例,在履行任何撤消操作之后,银行指导您,将保存您的活期存款帐户为顺差.
事件是断绝的.每个事件在同一资源举行操作时与其他事件都是彼此断绝的.这可通过数据的锁同步来实现.
事件是长期的.资源更新必须避免系统弊端,如硬件或网络弊端.在分布式系统中,当呈现网络弊端或数据库崩溃时,恢复历程是必须的.
以上是“<b>衡量Apache Geronimo EJB事件选项,第1部份: 容器管理事件</b>[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |