基于j2ee的分布式应用系统框架的研究与实践

上传人:E**** 文档编号:114174112 上传时间:2019-11-10 格式:PDF 页数:5 大小:646.48KB
返回 下载 相关 举报
基于j2ee的分布式应用系统框架的研究与实践_第1页
第1页 / 共5页
基于j2ee的分布式应用系统框架的研究与实践_第2页
第2页 / 共5页
基于j2ee的分布式应用系统框架的研究与实践_第3页
第3页 / 共5页
基于j2ee的分布式应用系统框架的研究与实践_第4页
第4页 / 共5页
基于j2ee的分布式应用系统框架的研究与实践_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《基于j2ee的分布式应用系统框架的研究与实践》由会员分享,可在线阅读,更多相关《基于j2ee的分布式应用系统框架的研究与实践(5页珍藏版)》请在金锄头文库上搜索。

1、“ 3 6 6 “ 网络新技术与应用研讨会论文集( 2 0 0 5 ) 基于J 2 E E 的分布式应用系统框架的研究与实践 司建锋1 邸瑞华 北京工业大学计算机学院1 0 0 0 2 2 摘要:J 2 E E 为开发分布式应用系统提供了一个标准的中间件平台,越来越多的大型企业 级应用系统的开发依靠于它。但是,在开发一个基于J 2 E E 的分布式应用系统的过程中面临 着很多问题需研究和解决,以J 2 E E 为核心的软件体系结构的构建是当前业界讨论的热点问 题。本文通过开发一个大型分布式应用系统的实践,研究如何利用现有技术构建一个强壮的, 可复用的、可扩展的基于J 2 E E 的W e b

2、应用系统,着重论述该系统的体系结构以及表示层、 业务层、持久层、域数据层所采用的技术。 关键字:J 2 E E ,设计模式,M V C ,S t r u t s ,H i b e r n a t e R e s e a r c ho nt h eA r c h i t e c t u r eo fJ 2 E EB a s e dD i s t r i b u t e d S y s t e m S i J i a n f e n g D i R u i h u a C o l l e g eo f C o m p u t e rS c i e n c eB e i j i n gU n i v

3、 e r s i t yo f T e c h n o l o g y 1 0 0 0 2 2 A b s t r a c t :J 2 E Ei sas t a n d a r dm i d d l e w a r ep l a t f o r mo ft h ed i s t r i b u t e ds y s t e m ,n o wm o r ea n d m o r ee n t e r p r i s ea p p l i c a t i o ns y s t e m sa r ed e v e l o p e do ni t B u tt h e r ea r em a n y

4、p r o b l e m sd u r i n g d e v e l o p m e n te s p e c i a l l yo nt h ea r c h i t e c t u r eo f J 2 E Eb a s e da p p l i c a t i o n T h i sp a p e rs h o w sy o uh o w t o s t r u c t u r ea na r c h i t e c t u r et ob u i l daw e b a p p l i c a t i o ni nJ 2 E Ep l a t f o r mw i t hs o m

5、 ee x i S t e df r a m e w o r k s a n dd i s c u s s e st h ef o u rl a y e r s ( P r e s e n t a t i o nL a y e r s ,B u s i n e s sL a y e r , P e r s i s t e n c eL a y e r D o m a i nD a t a L a y e r ) a n ds o m ec o r r e l a t i v et e c h n o l o g i e s K e y w o r d s :J 2 E E ,D e s i g

6、 nP a u e m ,M V C ,S t r u t s ,H i b e r n a t e 一、刖茜 L - L 作为最热门的企业级开发平台之一的J 2 E E ,为企业分布式应用的开发提供的一个标准平 台,并以其高度可用性、开放性、安全性、可靠性和可扩展性受到越来越多的软件开发厂商 的欢迎。然而,在一个实际企业级分布式应用系统的开发过程中,如何构建一个真正强壮的、 易维护的、易扩展的、用户友好的系统依然有待深入研究。如今在J a v a 领域新兴技术风起云 涌背景下,如何利用它们开发适合自己的系统,如何“多快好省”地交付高质量系统,对于 技术的选择,对于系统架构的思考,成为众多开发

7、者的挑战。 二、J 2 E E 应用模型 J 2 E E 应用模型从一个较高层次来描述开发人员如何开发基于J 2 E E 平台的企业应用系 统。最重要的集中在四个问题: 1 司建锋1 9 8 0 ,男硕士研究生s j r c T n a i l s b j u t e d u c n 信息资源开发与应用 3 6 7 “ ( 1 ) 用于与用户交互的表示层( P r e s e n t a t i o n T i e r ) 。 ( 2 ) 用于处理关键业务逻辑的业务层( B u s i n e s sL a y e r ) ( 3 ) 用于持久化业务数据的持久层( P e r s i s t

8、e n c eL a y e r ) 。 ( 4 ) 将以上三个层次有机结合起来的域数据层( D o m a i nD a t aL a y e r ) ,它是对横跨于各个 层面之间的业务数据对象的抽象。 实践证明:一个层次分明且各层职责明晰,相互尽量独立的架构设计将给系统的可用性、 可维护性、可扩展性带来极大的好处。 1 表示层 表示层是提供给用户的接口,是系统的窗口。因此,一个良好设计的表示层至关重要, 而现在普遍存在的问题是开发人员容易把大量属于业务层的逻辑处理放到了表示层来实现, 正是这种做法给系统的后期维护、扩展带来了巨大的伤害。 首先,由于程序块之间不具有良好的独立性,从而造成了他

9、们之间的强耦合性,软件维 护势必困难重重。其次。强耦合也使得程序难以复用,类间依赖关系严重,所谓的复用也只 能通过大量的代码C O P Y P A S T E 来实现。另外,难以支持多类型的客户端,因为对于嵌在表 示层的应用逻辑及数据访问的代码只能通过大量的复制粘贴实现复用,使系统难以扩展支持 多种表示方式。随着现代计算的普适性,计算无处不在,那么表示就无处不在,所以我们有 必要或者将有必要为一个系统提供多种表示方式。 2 业务屡 业务层是系统的业务逻辑核心处理区,然而在传统的系统开发中它往往容易被合并到表 示层或持久层进行开发。在一个典型的应用系统开发中,它处于中间层次它的主要职责在 于处理

10、业务逻辑及业务级别的验证,通常对于事务的控制也在这个层次。它的存在,避免了 表示层直接访问持久层这种危险行为。 在构建一个分布式应用系统过程中,需要处理远程访问问题,表示层要远程访问业务层 提供的服务,就要求业务层提供远程接口,本文将在后续中介绍如何运用E J B 来封装业务逻 辑并提供远程访问方法。 3 持久层 持久层设计的成功与否关系着整个应用系统的成败。然而由于面向关系数据库管理系统 与面向对象程序设计之间存在着矛盾,面向关系数据库是属于集合理论范畴,主要处理数据 集合的存储问题,而面向对象理论则讲究对象的封、继承,讲究对象的独立性,包含了数据 及对数据的处理方法。 在J 2 E E 领

11、域的数据持久层解决方案主要有:实体b e a n ,J a v a 数据对象( J D O ) ,数据访问 对象( D A O ) ,对象关系映像产品( O RM a p p i n g ) 等。在本文中将介绍目前应用较为广泛的 轻量级框架:H i b e r n a t eO RM a p p i n g 工具为持久层提供的良好解决方案。 4 域数据层 数据表中存放的数据记录需要对应的域模型对象,或称之为值对象:V O ( v a l u eo b j e c 0 。 V O 封装了持久层处理出来的数据对象,在层间被传递、处理、显示。这些数据对象代表的 是业务领域的真实对象,比如一个用户等。

12、 三、基于J 2 E E 平台的分布式应用系统框架, 本文通过开发一个大型分布式应用系统的实践,研究基于J 2 E E 平台的分布式应用系统 网络新技术与应用研讨会论文集( 2 0 0 5 ) 框架的设计和建立井结合S t r u t s ,E J B ,H i b e r n a t e 具体技术介绍我们的开发实践。我们开发的 基于J 2 E E 平台的分布式应用系统框架如图l 所示。 图I 基于J 2 E E 平台的应用系统框架图 1 M V C 设计模式与S t r u t s 框架实现表示层 M V C ( M o d u l e - V i e w - C o n t r 0 1 )

13、 即模型视图- 控制器。其核心思想为要求做到模型、视图 与控制之间的独立性,其中模型层可咀视为业务层范围视图层则用于展示用户接口,控制 层则负责用户输入输出的接收和转发f I I ,从图2 中我们可以看出它们之间的友好关系。 产坐 。:奎强I 厂 婆篓型 fj 目 嘉强 I 善黼鞠址:! _ ! ! 竺 卜i i 矗F 一 图2M V C 设计模式( M V C A r c h i t e c t u r e ) S t r u t s 框架其实质是基于J S P M O d e l 2 的M V C 框架实现。S t r u t s 把用户提交的数据封装在 A c t i o n F o 皿

14、中然后A c t i o n 从A c l i o n F o r m 中提取用户数据井调用业务层代理的业务方法。 S t r u t s 框架中,我们不用考虑数据的具体处理存储等问题我们将这些问题归结为后台问题, 由后台业务层代理来处理。 2 会话外观和E J B 实现业务层 我们选择E J B 技术实现业务层,F 3 B 组件为客户端提供远程调用从而支持分布式系统, 另外还可咀良好地利用E J B 容器进行诸如:事务控制,安全控制等。 会话外观( s e s s i o nF a c a d e ) 在E J B 设计模式中是最常用的模式之一,可以将它理解成为将 对持久层的调用封装在一个称

15、为会话外观的会话b e a n 层中,客户端访问会话b e a n 而非直接 访问持久层。其将某个用例的业务逻辑限制在一次网络调用中进行井通过对客户端提供单 一接口从而良好的分割了表示层和业务层的强耦合。同时在会话b e a n 中划分事务使得调 用在一个事务中完成实现操作的原子性口J 在具体应用中我们一般在会话外观之前再加 信息资源开发与应用 一个代理( d e l e g a t e ) 来封装E J B 远程调用代码。这个代理类的存在中断了前台开发对后台开发 的强烈依赖,同时也给前后台分别实现独立的单元测试提供了方便。 另外E J B H o m eF a c t o r y 设计模式提

16、供了一种客户端访问E J B 的最佳方法,即提供一个 S 抽g l e t o n 实现的普通J a v a 类来缓存H O M E 对象,同时封装了一些公用处理方法,从而每个 H O M E 对象只需请求一次,然后用S i n g l e t o n 类缓存起来,而不用客户端每次都去请求。 3 持久层解决方案和H i b e r n a t e H i b e r n a t e 通过提供给开发人员面向对象的编程接口。让开发人员从以往以数据为中心的 大量枯燥的持久层代码编程中解脱出来。H i b e r n a t e 可以完成J a v a 类到关系数据库表的映射, 同时还提供了丰富的数据查询和维护的方法,使开发人员更专注于业务对象模型的思考更 好的发挥面向对象方法解决现实问题的能力。P J H i b e r n a t e 功能强大,支持集合、对象关系、 组合类型,同时拥有丰富的H Q L ( H i b e r n a t eQ u e r yL a n

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号