J2EE探险者: 长期数据管理,第1部份[Java编程]
本文“J2EE探险者: 长期数据管理,第1部份[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
数据长期性是企业开辟中最棘手的一个方面.一个企业数据长期性办理筹划必须供应疾速的客户机事件,随着时间的过去确保数据完好性,以及在如系统崩溃和网络弊端之类的平常灾难发生时使数据持续存在.在 J2EE 探险者系列接下来的两个部份中,我们将侧重谈论 J2EE 技术,这些技术有助于您为企业体系构造成立坚固的数据长期性办理筹划.我们将通过扼要地介绍企业利用程序中的数据长期性来开始该主题,然后持续更具体地谈论各种技术选项.在本部份中,我们将对比实体 bean 的一站式(single-stop)办理筹划同更复杂的(但更结实的)会话 bean 与 Java 数据库衔接(Java Database Connectivity,JDBC)代码的组合.在下一部份中,我们将对比 Java 数据对象(Java Data Object,JDO)与实体 bean.
什么是数据长期性?
数据是任何计算机利用程序最重要的方面.计算机利用程序的核心是使某人或另一个计算机系统可以拜候其数据.在企业环境中,数据不但必须是可拜候的(即,与用户界面衔接并按一系列业务法则管理),并且还必须是长期的. 长期数据存储就是即便在服务器崩溃的情形下仍能存在的数据存储.
长期数据存在于利用程序的活动内存之外,普通在数据库或平面文件系统中.固然长期数据被读入瞬时存储器以供利用或改正,但它始终被写到外部数据存储中以长期存储.美国国家尺度与技术研究所(The United States National Institute of Standards and Technology)(请参阅 参考资料)定义了三种级别的长期数据:
部份长期数据是一种仅答应对最新版本更新的长期数据构造.
长期数据是一种保存其旧版本的数据构造;即,从前版本和当前版本都大概被查询.
完好长期数据是一种保护其数据的全部版本并答应对这些版本更新的长期数据构造.
大大都业务利用程序至少供应部份长期数据.这种范例的长期性在事件中期大概乃至在恳求中期呈现系统弊端时简单遭破坏,这会招致数据不完好且常常遭破坏.另一方面,在长期数据实现中,对系统中止或弊端以“回滚(rollback)”回应,数据状况被回滚到上一个已知的杰出配置.长期数据实目前企业体系构造和数据库管理系统(DBMS)中很常见.完好长期数据实现非常少见.完好长期数据实现的少数几个示例有:日记记录文件系统、VMS 文件系统(如 VAX 和 Mac OS X)以及并发版本掌握系统(CVS).
J2EE 中的长期性
信息时代非常夸大分布式企业计算平台的利用.在这类平台上,必须不惜任何代价保护数据并使其永久持续存在,即便面对网络弊端、内存泄露和服务器崩溃时,也是如此.为了保护这种长期性,利用程序组件必须可以处理并发性、衔接纳理、数据完好性和同步.J2EE 的全部三种数据管理技术都为开辟人员处理这些功效,但每种技术在处理时略有差别.
实体 bean,它供应结实的数据长期性.bean 容器处理大部份的数据完好性、资源管理和并发性功效,从而使开辟人员关注业务逻辑和数据处理,而不是这些初级细节.利用 bean 管理的长期性(Bean Managed Persistence,BMP)实体 bean 时,开辟人员编写长期性代码而容器肯定什么时刻履行该代码.利用容器管理的长期性(Container Managed Persistence,CMP)实体 bean 时,容器生成长期性代码并管理长期性逻辑.
JDBC,当与会话 bean 结合时,它可供应简便的 EJB 开辟和与平台无关的布置,而没有象 EJB 技术那样的资源利用和内存开销.象 BMP 实体 bean 一样,该办理筹划要求开辟人员编写长期性代码.与 BMP bean 差别的是,它还要求开辟人员编写长期性逻辑.因而,开辟人员负责肯定什么时刻将数据长期保存在数据存储中以及什么时刻从数据存储装入数据.
Java 数据对象是最新的长期性机制.JDO 供应了面向对象的长期数据存储.开辟人员利用 POJO(无格局普通 Java 对象,plain ordinary Java object)来装入和存储长期数据.
我们将在余下的文章中谈论实体 bean vs. 会话 bean 和 JDBC 组合的优缺陷.
以上是“J2EE探险者: 长期数据管理,第1部份[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |