(计算机应用技术专业论文)基于struts扩展架构的大型web应用系统设计与实现.pdf_第1页
(计算机应用技术专业论文)基于struts扩展架构的大型web应用系统设计与实现.pdf_第2页
(计算机应用技术专业论文)基于struts扩展架构的大型web应用系统设计与实现.pdf_第3页
(计算机应用技术专业论文)基于struts扩展架构的大型web应用系统设计与实现.pdf_第4页
(计算机应用技术专业论文)基于struts扩展架构的大型web应用系统设计与实现.pdf_第5页
已阅读5页,还剩104页未读 继续免费阅读

(计算机应用技术专业论文)基于struts扩展架构的大型web应用系统设计与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

东北大学硕士学位论文摘要 基于s t r u t s 扩展架构的大型we b 应用系统设计与实现 摘要 在社会飞 速发展的今天, 人类己 经步入了信息化时代。企业为了适应信息化社会发展的 需要,纷纷要求开发适合自 身业务的w e b 应用系统。而开发一个we b 应用系统是一项浩大 的工程, 要求设计者能够提出 合理的系统架构。合理的系统架构可以 减少开发及维护系 统所 用的资源, 提升工作效率,因此, 在w e t 企业级应用系统开发过程中, 设计模式的选定和应 用系统架构的 构建是一项重要内 容。 通常, 采用m v c ( m o d e l - v i e w - c o n t r o l l e r )的设计模式 来 解决 企业级 应用架 构问 题。 在m v c 体系中, 数据模型 ( m o d e l ) 、 表现逻辑 ( v i e w ) 和 控 制逻辑 ( c o n t r o ll e r ) 是分离的 组 件, 但它们可以 互相通信。目 前, 有许多整合框架策略能 够 实 现m v c体 系 结 构, 其中 , 一 种比 较常 用的 整 合 框架策 略 是s tr u t s + h ib e m a t e 架 构。 s tr u t s 是m v c设计模式的一个应用实例, 它是实现表示层的工具,应用 s t r u t s 可以极大减轻设计 和开发大型企 业级软件的负 担, 使辅助设计人员 有效地规划作业流程,并使设计人员 和编程 人员在较短的时间里能开发出系统原型。h i b e rn a t 。是一种新的对象/ 关系数据库映射 ( o / r m a p p in g ) 1 一 具, 它 不仅 提供了j a v a 类和数据表之间的 映 射, 还提 供了 数据查 询和 恢 复机制,在系统中更好的实现了 数据持久化。 本文重点介绍了一个关于电 信施工设各管理项目 的系统架构。开发过程中, 应用 m v c 设计模式,以s t r u t s + h i b e m a t e 为核心架构策略,并结合电信施工设各管理的实际业务特点, 提出了一套合理的架构层次。 本架构按照w e b 系统架构的分层原则分为表示层、 业务层和数 据层,同时详细地规定了各层次要实现的功能及它们之间的通信接口。架构设计的原则是尽 量降低层与层之间的 祸合度, 达到分层开发的效果, 使各层之间 互不干扰, 从而提高了开发 速度, 并保证开发质量 该架构也适用于一般的w e b 应用系统开发, 因 而本项目 为其 他w e b 应用系统开发提供了成功的案例。本文还从项目中抽取典型实例,阐述了如何利用该架构有 效地完成w e b 页面的设计和开发工作。 关键词 大型 w e b应用系统 m v c模式 s t r u t s架构 h i b e r n a t e架构 0 / r m a p p i n g 东北大学 硕士学 位论文a b s t r a c t t h e d e s i g n a n d i m p l e m e n t a t i o n o f l a r g e - s c a l e w e b a p p l i c a t i o n s y s t e m ba s e d o n s t r u t s e x t e n d e d f r a me wo r k ab s t r a c t wi t h t h e d e v e l o p m e n t o f s o c i e t y , h u m a n e n t e r s i n f o r m a t i o n a g e n o w a d a y s . i n o r d e r t o k e e p s t e p w i t h t h e d e v e l o p m e n t o f i n f o r m a t i o n s o c i e t y , e n t e r p r i s e s n e e d a p p r o p r i a t e w e b a p p l i c a t i o n s y s t e m f o r t h e i r b u s i n e s s . h o w e v e r , i t i s u s u a l l y a l a r g e p r o j e c t t o d e v e l o p a w e b a p p l i c a t i o n s y s t e m a n d d e s i g n e r s m u s t b e a b l e t o p u t f o r w a r d a p r o p e r s y s t e m f r a m e w o r k . t h e p r o p e r s y s t e m f r a m e w o r k c a n d e c r e a s e t h e r e s o u r c e t o d e v e l o p a n d m a i n t a i n t h e s y s t e m a n d t h u s i n c r e a s e t h e e ff i c i e n c y . s o i t i s a k e y a s p e c t t o d e t e r m i n e d e s i g n p a t t e rn a n d c o n s t r u c t t h e a p p l ic a t i o n s y s t e m f r a m e w o r k i f y o u w a n t t o d e v e l o p w e b e n t e r p r i s e a p p l i c a t i o n s y s t e m . w e t y p i c a l l y a d o p t m v c ( m o d e l - v i e w - c o n t r o l l e r ) p a t t e rn t o t h e e n t e r p r i s e a p p l i c a t i o n f r a m e w o r k . i n t h e m v c a r c h i t e c t u r e , d a t a m o d e l ( m o d e l) , v ie w lo g ic ( v ie w ) a n d c o n t r o l le r lo g i c ( c o n t r o l l e r ) a r e s e p a r a te c o m p o n e n t s w h i c h c a n c o m m u n i c a t e e a c h o t h e r . n o w a d a y s , t h e r e a r e a l a r g e n u m b e r o f c o m p r e h e n s i v e f r a m e w o r k p o l i c i e s t o r e a l i z e t h e m v c a r c h i t e c t u r e b u t s t r u t s p l u s h i b e rn a t e f r a m e w o r k i s a c o m m o n o n e . s t r u t s is a n i n s t a n c e o f j s p m o d u l e 2 w h i c h i s r e a l i z e d b y m v c d e s i g n p a t t e rn . i t i s u s e d t o r e a l iz e p r e s e n t a t i o n l a y e r a n d t ry h a r d t o e a s e w e i g h t o f f o r m in g e n t e r p r i s e we b a p p l i c a t i o n . i t e n a b l e d e s i g n e r t o p l a n w o r k fl o w e ff e c t i v e l y a n d e n a b l e d e s i g n e r a n d p r o g r a m m e r t o w o r k o u t a s y s t e m p r o t o t y p e q u i c k l y . h i b e rn a t e i s a n e w d a t a b a s e o b j e c t / r e l a t i o n m a p p i n g ( o r m) t o o l . i t p r o v i d e s t h e s e a r c h a n d r e c o v e r y m e c h a n i s m o f d a t a a s w e l l a s t h e m a p b e t w e e n j a v a c l a s s e s a n d t a b l e s i n t h e d a t a b a s e a n d i t e n a b l e y o u t o r e a l i z e d a t a p e r s i s t e n c e m o r e e a s i l y . t h e t h e s i s m a i n l y i n t r o d u c e s t h e s y s t e m f r a m e w o r k o f t e l e c o m c o n s t r u c t i o n d e v i c e m a n a g e m e n t p r o j e c t . d u r i n g d e v e l o p m e n t , a p p l y i n g m v c d e s i g n p a t t e r n , w i t h s t r u t s + h i b e r n a t e a s c e n t r a l f r a m e w o r k p o l i c y , c o n s i d e r i n g t h e a c t u a l b u s i n e s s f e a t u r e o f c o n s t r u c t i o n d e v i c e m a n a g e m e n t , w e p u t f o r w a r d a n a p p r o p r ia t e h i e r a r c h i c a l f r a m e w o r k . i t con s i s t s o f p r e s e n t a t i o n l a y e r , b u s i n e s s l a y e r a n d d a t a l a y e r a c cor d i n g t o w e b s y s t e m f r a m e w o r k l a y e r d i v i s i o n p r i n c i p l e . a n d f u n c t i o n s o f e v e r y l a y e r s a n d i n t e r f a c e s f o r c o m m u n i c a t i n g e a c h o t h e r a r e d e f i n e d i n d e t a i l . t h e p r i n c i p l e o f d e s ig n i n g fr a m e w o r k i s t o m a k e c o h e s i o n b e t w e e n l a y e r s a s l o w a s p o s s i b l e . i t e n a b l e s y o u to d e v e l o p h i e r a r c h i c a l l y w i t h o u t i n t e r v e n t i o n d e v e l o p m e n t o n t h e c o n d i t i o n o f e n s u r i n g t h e q u a l i t y . t h e - i i i - b e t w e e n l a y e r s a n d t h u s p r o m o t e fr a m e w o r k c a n a l s o b e a p p l i e d i n 东北大学 硕士学 位论文a b s t r a c t d e v e l o p i n g o t h e r c o m m o n w e b a p p l i c a t i o n s y s t e m . t h a t i s t o s a y t h a t t h e s y s t e m c o u l d b e l o o k e d a s a s u c c e s s c a s e o n l y . wi t h a t y p i c a l s i m p l e q u o t e d f r o m t h e p r o j e c t , t h e t h e s i s a l s o d e s c r i b e s h o w t o d e s i g n a n d d e v e l o p w e b p a g e s e f f i c i e n t l y w i t h t h e fr a m e w o r k k e y w o r d s l a r g e - s c a l e w e b a p p li c a t io n s y s te m , m v c d e s i g n p a t te n , s t r u t s f r a m e w o r k , h i b e rn a t e , o / r m a p p i n g - q t 东北大学硕士论文 声明 本人声明所呈交的学位论文是在导师的指导下完成的。论文中取 得的研究成果除加以标志和致谢的地方外,不包含其它人己经发表或 编写过的研究成果,也不包括本人使用过的其它材料。与我一同工作 的同志对本研究所作的任何贡献均已在论文中作了 明确的说明并标示 致谢。 本 人 签 名 : 矛 入 中 中 日m i : s o d s - 1 . 9 7 学位论文版权使用授权书 本学位论文作者和指导教师完全了解东北大学有关保留、 使用学位 论文的规定:即学校有权保留并向国家有关部门或机构送交论文的复 印件和磁盘,允许论文被查阅和借阅。本人授权东北大学可以将学位 论文的全部或部分内容编入有关数据库进行检索、交流。 ( 如作者和导师同意网上交流, 请在下方签名; 否则视为不同意。 ) 学 位 论 文 作 者 黝: 引 冲 中 签字日 期: 2 o 6, 1 习 导 师 签 冬矛/ 签 字日 期:-) -o v a , / . k 7 东北大学硕士学位论文第一章 概述 第一章 概述 1 . 1 we b 企业级应用系统基本特点 企业级应用是指 那些为商 业组 织、 大型 企 业而创建并 部署的 解决 方案及应用1 1 1 . 这样的 应用系统首先包含有与具体业务相关的数据库,并含一系列访问数据库的程序。程序之间相 对独立的各个部分能有机的结合 起来,共享数据, 互相通信, 把数据组装成链, 从而使消息 准确快速地传递以 便完成系统功能。 最后, 这类系统便于用户在 in te m et环境中操作, 通常 通过w e b 服务器给客 户提供服务。 这些大型企业级应用的 结构复杂, 涉及的外部资源众多、 事务密集、 数据量大、 用户数多, 需要有较强的安全性考虑。 所以, 在设计这些系统时要充 分考虑到处理海量数据的能力, 用户过载平衡问 题,容错能力, 安全性,组件可重用性,开 发、 维护的 有效性等问 题p 1 前些年, 传统的客户端用 及 务器应用程序提供了包括利用多重客户应用程序的多重服务和 如何配置到不同的硬件设备上的分布式系统的解决方案。常见的关于企业级软件的解决方案 还有b 2 b ( b u s i n e s s t o b u s in e s s ) 和b 2 c ( b u s i n e s s t o c u s t o m e r ) 。当 代的企业级应用决不可 能是一个个的独立系统。 在企业中, 一般都会部署多个彼此连接的、相互通过不同集成层次 进行交互的企业级应用,同时这些应用又都有可能与其它企业的相关应用连接,从而构成一 个 结构复杂的、 跨越i n t r a n e t 和i n t e rn e t 的 分布式企业级应用群集。 其中, 连接企业内 部各种 应用的 技术称为e a i ( e n t e r p r i s e a p p l i c a t i o n i n t e g r a t i o n , 企业级应用集成) , 而连接企业间各 种应用的 技术 称为 13 2 13 1 ( b u s in e s s - t o - b u s in e s s i n t e g r a t io n , 企 业间 集成) , 采用 e a i . 13 2 13 1 技术及早先的n层体系架构就是当 今企 业级应用的最大特征i l l 本篇论文要介绍的电 信施工设备管理系统就符合上述we b 企业级应用系统的基本特点。 1 .2 we b 企业级应用系统开发背景 由于以上阐述的关于w e b 企业级应用系统的基本特点, 很容易得出一个结论二 we b 企业 级应用系统开发不同于传统意义上的 应用系统的开发, w e b 上的 企业级应用系统采用了分层 的观点, 而j 2 e e 技术正 好能够满 足开发w e b 企业级应用程序的 要求, 它的 应用编程模式要 求开发者把表示逻辑, 业务逻辑和数 据访问 逻辑分开(3 i s u n 公司 的j 2 e e ( j a v a 2 企 业版 ) 其最终目 的 就是成为一 个能 够使企 业开发者大幅 缩短产品 投放市场时间。它作为专业开发商使用的 主要语言,已 经成为企 业应用开发的标准。该平台 为 创建、部署和管理企业级应用以 及代码的可移植性及重用性提供了一个安全、 鲁棒和可扩 东北大学硕士学位论文第一章 概述 第一章 概述 1 . 1 we b 企业级应用系统基本特点 企业级应用是指 那些为商 业组 织、 大型 企 业而创建并 部署的 解决 方案及应用1 1 1 . 这样的 应用系统首先包含有与具体业务相关的数据库,并含一系列访问数据库的程序。程序之间相 对独立的各个部分能有机的结合 起来,共享数据, 互相通信, 把数据组装成链, 从而使消息 准确快速地传递以 便完成系统功能。 最后, 这类系统便于用户在 in te m et环境中操作, 通常 通过w e b 服务器给客 户提供服务。 这些大型企业级应用的 结构复杂, 涉及的外部资源众多、 事务密集、 数据量大、 用户数多, 需要有较强的安全性考虑。 所以, 在设计这些系统时要充 分考虑到处理海量数据的能力, 用户过载平衡问 题,容错能力, 安全性,组件可重用性,开 发、 维护的 有效性等问 题p 1 前些年, 传统的客户端用 及 务器应用程序提供了包括利用多重客户应用程序的多重服务和 如何配置到不同的硬件设备上的分布式系统的解决方案。常见的关于企业级软件的解决方案 还有b 2 b ( b u s i n e s s t o b u s in e s s ) 和b 2 c ( b u s i n e s s t o c u s t o m e r ) 。当 代的企业级应用决不可 能是一个个的独立系统。 在企业中, 一般都会部署多个彼此连接的、相互通过不同集成层次 进行交互的企业级应用,同时这些应用又都有可能与其它企业的相关应用连接,从而构成一 个 结构复杂的、 跨越i n t r a n e t 和i n t e rn e t 的 分布式企业级应用群集。 其中, 连接企业内 部各种 应用的 技术称为e a i ( e n t e r p r i s e a p p l i c a t i o n i n t e g r a t i o n , 企业级应用集成) , 而连接企业间各 种应用的 技术 称为 13 2 13 1 ( b u s in e s s - t o - b u s in e s s i n t e g r a t io n , 企 业间 集成) , 采用 e a i . 13 2 13 1 技术及早先的n层体系架构就是当 今企 业级应用的最大特征i l l 本篇论文要介绍的电 信施工设备管理系统就符合上述we b 企业级应用系统的基本特点。 1 .2 we b 企业级应用系统开发背景 由于以上阐述的关于w e b 企业级应用系统的基本特点, 很容易得出一个结论二 we b 企业 级应用系统开发不同于传统意义上的 应用系统的开发, w e b 上的 企业级应用系统采用了分层 的观点, 而j 2 e e 技术正 好能够满 足开发w e b 企业级应用程序的 要求, 它的 应用编程模式要 求开发者把表示逻辑, 业务逻辑和数 据访问 逻辑分开(3 i s u n 公司 的j 2 e e ( j a v a 2 企 业版 ) 其最终目 的 就是成为一 个能 够使企 业开发者大幅 缩短产品 投放市场时间。它作为专业开发商使用的 主要语言,已 经成为企 业应用开发的标准。该平台 为 创建、部署和管理企业级应用以 及代码的可移植性及重用性提供了一个安全、 鲁棒和可扩 东 北大学 硕士学 位论文第一章 概述 展的环境。 j 2 e e体系结构提供中间层集成框架用来满足没有太多费用而又需要高可用性、 高 可靠性以及可扩展性的应用的需求。 通过提供统一的开发平台, j 2 e e降低了开发多层应用的 费 用和 复杂 性, 同 时 完全 支 持e n t e r p r is e j a v a b e a n s , 有良 好的向 导 支持打包和部署应用, 添 加目 录支持, 增强了安全机制, 提高了 性能。 j 2 e e是一种利用j a v a 语言定义的 标准体系结 构, s u n的j 2 e e组件有儿部分组成, 其中包括应用编程模型、 标准实施平台、用来测试是 否符合j 2 e e 的 兼容 性套 件 和实 施参考资 料 i to l j 2 e e 构架的 运用成为一种跨平台的 突破, 它能够让各种不同的 平台和操作系统上的数据 进行交互, 采用“ 中间 件十 应用服务器十 数据库服务器” 的多层构架, 表现逻辑、 业务处理逻辑 和数据 访问 逻辑分开,并支持大 量用户访问和海量数据的存 储、 检索和管理。在探索有力的 w e b 企业应用系 统的 体系结构的长期过程中, 人们逐步提出了各种不同的分层策略和体系结 构样式p ) . 1 .3 we b 企业应用系统体系结构和分层 在w e b 上的企业级应用体系结构的样式包括两层( 2 - t i e r ) 、 三层(o - t i e r ) 和n 层( n - t i e r ) , 分层结构是 在客户机、 服务器硬件平台和网络设备不断出 现的 前提卜 提出的 2 2 1 “ 层”在计算机领域中,起到了非常重要的作用比较典型的应用就是网络的七层 o s i - i s o结构和四层 t c p - i p结构。同时, “ 层”的 概念在软件领域也同样好用。如在 j 2 e e 开发中, 经常要遇到用户登录、 注册、 注销等功能, 可以在此加一个层, 专门 提供这些服务。 另 外一 个例子, 在s e r v l e t 中的过 滤器功能也是利用了 层的概念使过滤器通过用户的编码提供 各种过滤功能, 比如在聊天室里, 可以限制某些语句的显示。 利用层可以 把不同的任务分开, 每个层都充当一个特定的 角色, 从逻辑上将子系统划分成许多 集合,限 制子系统间的依赖关 系,使系统以 更松散的方式祸合,可以让 低层 给上层提供可靠的服务, 可以屏蔽底层的实现 细节, 可以 改变底层的具体实现而不需要通知上层。 层一般不能绕过在它下面的 层去访问 其 他层, 除非发生了 错误, 利用其他层来进行错误处理 1 3 1 1 .3 .1传统的两层体系结构 在过去应用系统的开发过程中, c l i e n t / s e r v e r 软件架构得到了广泛应用,其特点是, 应 用程序逻辑通常分布在客户和服务器两端,客户端向 服务器发出 数据资源访问 请求, 服务器 端处理这个请求并将结果返回给服务器端。客户端/ 服务器软件架构是一种通用的、 基于消 息的 模块化基础结构,与 集中式大型分时计算相比, 它能 够提高系统的可用性、灵活性、 互 操作性和可 扩展 性。 这 样, 远 程 程序调 用 r p c s ( r e m o t e p r o c e d u r e c a ll s ) 和标准查询语言 s q l ( s ta n d a r d q u e r y l a n g u a g e ) 语 句被用 在客户 端和服务器 端的通 信中。 在c l i e n t / s e r v e r 体 系 结构中, 用户接l 通常 在用户桌 面环境中而数据库管理服务 通常是在服务器中, 服务器是 东 北大学 硕士学 位论文第一章 概述 展的环境。 j 2 e e体系结构提供中间层集成框架用来满足没有太多费用而又需要高可用性、 高 可靠性以及可扩展性的应用的需求。 通过提供统一的开发平台, j 2 e e降低了开发多层应用的 费 用和 复杂 性, 同 时 完全 支 持e n t e r p r is e j a v a b e a n s , 有良 好的向 导 支持打包和部署应用, 添 加目 录支持, 增强了安全机制, 提高了 性能。 j 2 e e是一种利用j a v a 语言定义的 标准体系结 构, s u n的j 2 e e组件有儿部分组成, 其中包括应用编程模型、 标准实施平台、用来测试是 否符合j 2 e e 的 兼容 性套 件 和实 施参考资 料 i to l j 2 e e 构架的 运用成为一种跨平台的 突破, 它能够让各种不同的 平台和操作系统上的数据 进行交互, 采用“ 中间 件十 应用服务器十 数据库服务器” 的多层构架, 表现逻辑、 业务处理逻辑 和数据 访问 逻辑分开,并支持大 量用户访问和海量数据的存 储、 检索和管理。在探索有力的 w e b 企业应用系 统的 体系结构的长期过程中, 人们逐步提出了各种不同的分层策略和体系结 构样式p ) . 1 .3 we b 企业应用系统体系结构和分层 在w e b 上的企业级应用体系结构的样式包括两层( 2 - t i e r ) 、 三层(o - t i e r ) 和n 层( n - t i e r ) , 分层结构是 在客户机、 服务器硬件平台和网络设备不断出 现的 前提卜 提出的 2 2 1 “ 层”在计算机领域中,起到了非常重要的作用比较典型的应用就是网络的七层 o s i - i s o结构和四层 t c p - i p结构。同时, “ 层”的 概念在软件领域也同样好用。如在 j 2 e e 开发中, 经常要遇到用户登录、 注册、 注销等功能, 可以在此加一个层, 专门 提供这些服务。 另 外一 个例子, 在s e r v l e t 中的过 滤器功能也是利用了 层的概念使过滤器通过用户的编码提供 各种过滤功能, 比如在聊天室里, 可以限制某些语句的显示。 利用层可以 把不同的任务分开, 每个层都充当一个特定的 角色, 从逻辑上将子系统划分成许多 集合,限 制子系统间的依赖关 系,使系统以 更松散的方式祸合,可以让 低层 给上层提供可靠的服务, 可以屏蔽底层的实现 细节, 可以 改变底层的具体实现而不需要通知上层。 层一般不能绕过在它下面的 层去访问 其 他层, 除非发生了 错误, 利用其他层来进行错误处理 1 3 1 1 .3 .1传统的两层体系结构 在过去应用系统的开发过程中, c l i e n t / s e r v e r 软件架构得到了广泛应用,其特点是, 应 用程序逻辑通常分布在客户和服务器两端,客户端向 服务器发出 数据资源访问 请求, 服务器 端处理这个请求并将结果返回给服务器端。客户端/ 服务器软件架构是一种通用的、 基于消 息的 模块化基础结构,与 集中式大型分时计算相比, 它能 够提高系统的可用性、灵活性、 互 操作性和可 扩展 性。 这 样, 远 程 程序调 用 r p c s ( r e m o t e p r o c e d u r e c a ll s ) 和标准查询语言 s q l ( s ta n d a r d q u e r y l a n g u a g e ) 语 句被用 在客户 端和服务器 端的通 信中。 在c l i e n t / s e r v e r 体 系 结构中, 用户接l 通常 在用户桌 面环境中而数据库管理服务 通常是在服务器中, 服务器是 东 北大学 硕士学 位论文第一章 概述 展的环境。 j 2 e e体系结构提供中间层集成框架用来满足没有太多费用而又需要高可用性、 高 可靠性以及可扩展性的应用的需求。 通过提供统一的开发平台, j 2 e e降低了开发多层应用的 费 用和 复杂 性, 同 时 完全 支 持e n t e r p r is e j a v a b e a n s , 有良 好的向 导 支持打包和部署应用, 添 加目 录支持, 增强了安全机制, 提高了 性能。 j 2 e e是一种利用j a v a 语言定义的 标准体系结 构, s u n的j 2 e e组件有儿部分组成, 其中包括应用编程模型、 标准实施平台、用来测试是 否符合j 2 e e 的 兼容 性套 件 和实 施参考资 料 i to l j 2 e e 构架的 运用成为一种跨平台的 突破, 它能够让各种不同的 平台和操作系统上的数据 进行交互, 采用“ 中间 件十 应用服务器十 数据库服务器” 的多层构架, 表现逻辑、 业务处理逻辑 和数据 访问 逻辑分开,并支持大 量用户访问和海量数据的存 储、 检索和管理。在探索有力的 w e b 企业应用系 统的 体系结构的长期过程中, 人们逐步提出了各种不同的分层策略和体系结 构样式p ) . 1 .3 we b 企业应用系统体系结构和分层 在w e b 上的企业级应用体系结构的样式包括两层( 2 - t i e r ) 、 三层(o - t i e r ) 和n 层( n - t i e r ) , 分层结构是 在客户机、 服务器硬件平台和网络设备不断出 现的 前提卜 提出的 2 2 1 “ 层”在计算机领域中,起到了非常重要的作用比较典型的应用就是网络的七层 o s i - i s o结构和四层 t c p - i p结构。同时, “ 层”的 概念在软件领域也同样好用。如在 j 2 e e 开发中, 经常要遇到用户登录、 注册、 注销等功能, 可以在此加一个层, 专门 提供这些服务。 另 外一 个例子, 在s e r v l e t 中的过 滤器功能也是利用了 层的概念使过滤器通过用户的编码提供 各种过滤功能, 比如在聊天室里, 可以限制某些语句的显示。 利用层可以 把不同的任务分开, 每个层都充当一个特定的 角色, 从逻辑上将子系统划分成许多 集合,限 制子系统间的依赖关 系,使系统以 更松散的方式祸合,可以让 低层 给上层提供可靠的服务, 可以屏蔽底层的实现 细节, 可以 改变底层的具体实现而不需要通知上层。 层一般不能绕过在它下面的 层去访问 其 他层, 除非发生了 错误, 利用其他层来进行错误处理 1 3 1 1 .3 .1传统的两层体系结构 在过去应用系统的开发过程中, c l i e n t / s e r v e r 软件架构得到了广泛应用,其特点是, 应 用程序逻辑通常分布在客户和服务器两端,客户端向 服务器发出 数据资源访问 请求, 服务器 端处理这个请求并将结果返回给服务器端。客户端/ 服务器软件架构是一种通用的、 基于消 息的 模块化基础结构,与 集中式大型分时计算相比, 它能 够提高系统的可用性、灵活性、 互 操作性和可 扩展 性。 这 样, 远 程 程序调 用 r p c s ( r e m o t e p r o c e d u r e c a ll s ) 和标准查询语言 s q l ( s ta n d a r d q u e r y l a n g u a g e ) 语 句被用 在客户 端和服务器 端的通 信中。 在c l i e n t / s e r v e r 体 系 结构中, 用户接l 通常 在用户桌 面环境中而数据库管理服务 通常是在服务器中, 服务器是 东北大学 硕士学 位论文第一章 概述 高性能的机器能为许多客户端提供服务 ; 1 如果工 作组只有1 2 人到1 0 0 人在同 一局域网中同时交互访问,那么, 两层c l i e n t / s e r v e r 结构是分布式计算的 较好的 解决 方案。 可是当 访问 人数超过了1 0 0 人时, 性能将会恶化。这 一局限 性是 因为即 使 在服 务 器端 没有s 作要做时, 也要通 过, k e e p - a l i v e 消息与每个客户端保 持连接。两层结构的另一个局限 性是, 使用第三方的数据库程序来实现数据库管理服务,限 制了 应用程序对d b m s ( d a t a b a s e m a n a g e r s y s t e m ) 选择 及其灵 活性 最后, 在没有自 动重 新生成程序代码的 情况下, 要把程序功能 从一个服务器转移到( 重新分配) 另一个服务器时, 是比 较困 难的【2 1 ) 1 .3 .2典型的三层体系结构 为了 解决以 上两层体系结构的限制,提出了二层结构。 在三层结构中,中间层是在用户 系统接曰 客户端环境和数据库管理服务器环境之间添加的, 也叫组件层。 所谓三层结构, 即: 客户端/ 应用服务器/ 数据服务器,将应用分为界面控制 ( 或者说c l i e n t 端) ,业务逻辑和中间 件。 三层应用服务器结构把应用主体分配给一个共享的主机上而不是在用户系统接口的客户 环境中。 应用服务器不驱动图形用户界面( g u i ) , 而是共享业务逻辑, 计算和数据恢复机制。 表示层逻辑主要处理用户和软件的交互。 现在最流行的莫过于视窗图形界面 ( w i m p ) 和 基于h t m ! 的界面了。 表示层的主要职责就是为用户提供信息, 以 及把用户的指令翻泽后传送 给业务层和数据层。 数据层逻辑包括处理和其他系统的 通信, 代表系统执行任务。例如数据库系统交互,和 其他应用系统的交互等。在大多数的信息系统中, 这个层的最大的功能就是存储持久数据。 还有一 个就是领域层逻辑,有时也被叫做业务逻辑。它包括输入和存储数据的计算。验 证表示层来的数据, 根据表示层的 指令指派一个数据层逻辑浏。 1 .3 .3 j 2 e e的n层体系结构 j 2 e e为构建可伸缩性的大型企业级应用提供了一个可行性建议, 它提倡将应用程序逻辑 根据功能的不同 分为多个层次,由多个应用程序组件所作成的 j 2 e e应用系统可以按组装的 不同分配到不同的计算机上。 东北大学 硕士学 位论文第一章 概述 高性能的机器能为许多客户端提供服务 ; 1 如果工 作组只有1 2 人到1 0 0 人在同 一局域网中同时交互访问,那么, 两层c l i e n t / s e r v e r 结构是分布式计算的 较好的 解决 方案。 可是当 访问 人数超过了1 0 0 人时, 性能将会恶化。这 一局限 性是 因为即 使 在服 务 器端 没有s 作要做时, 也要通 过, k e e p - a l i v e 消息与每个客户端保 持连接。两层结构的另一个局限 性是, 使用第三方的数据库程序来实现数据库管理服务,限 制了 应用程序对d b m s ( d a t a b a s e m a n a g e r s y s t e m ) 选择 及其灵 活性 最后, 在没有自 动重 新生成程序代码的 情况下, 要把程序功能 从一个服务器转移到( 重新分配) 另一个服务器时, 是比 较困 难的【2 1 ) 1 .3 .2典型的三层体系结构 为了 解决以 上两层体系结构的限制,提出了二层结构。 在三层结构中,中间层是在用户 系统接曰 客户端环境和数据库管理服务器环境之间添加的, 也叫组件层。 所谓三层结构, 即: 客户端/ 应用服务器/ 数据服务器,将应用分为界面控制 ( 或者说c l i e n t 端) ,业务逻辑和中间 件。 三层应用服务器结构把应用主体分配给一个共享的主机上而不是在用户系统接口的客户 环境中。 应用服务器不驱动图形用户界面( g u i ) , 而是共享业务逻辑, 计算和数据恢复机制。 表示层逻辑主要处理用户和软件的交互。 现在最流行的莫过于视窗图形界面 ( w i m p ) 和 基于h t m ! 的界面了。 表示层的主要职责就是为用户提供信息, 以 及把用户的指令翻泽后传送 给业务层和数据层。 数据层逻辑包括处理和其他系统的 通信, 代表系统执行任务。例如数据库系统交互,和 其他应用系统的交互等。在大多数的信息系统中, 这个层的最大的功能就是存储持久数据。 还有一 个就是领域层逻辑,有时也被叫做业务逻辑。它包括输入和存储数据的计算。验 证表示层来的数据, 根据表示层的 指令指派一个数据层逻辑浏。 1 .3 .3 j 2 e e的n层体系结构 j 2 e e为构建可伸缩性的大型企业级应用提供了一个可行性建议, 它提倡将应用程序逻辑 根据功能的不同 分为多个层次,由多个应用程序组件所作成的 j 2 e e应用系统可以按组装的 不同分配到不同的计算机上。 东北大学 硕士学 位论文第一章 概述 高性能的机器能为许多客户端提供服务 ; 1 如果工 作组只有1 2 人到1 0 0 人在同 一局域网中同时交互访问,那么, 两层c l i e n t / s e r v e r 结构是分布式计算的 较好的 解决 方案。 可是当 访问 人数超过了1 0 0 人时, 性能将会恶化。这 一局限 性是 因为即 使 在服 务 器端 没有s 作要做时, 也要通 过, k e e p - a l i v e 消息与每个客户端保 持连接。两层结构的另一个局限 性是, 使用第三方的数据库程序来实现数据库管理服务,限 制了 应用程序对d b m s ( d a t a b a s e m a n a g e r s y s t e m ) 选择 及其灵 活性 最后, 在没有自 动重 新生成程序代码的 情况下, 要把程序功能 从一个服务器转移到( 重新分配) 另一个服务器时, 是比 较困 难的【2 1 ) 1 .3 .2典型的三层体系结构 为了 解决以 上两层体系结构的限制,提出了二层结构。 在三层结构中,中间层是在用户 系统接曰 客户端环境和数据库管理服务器环境之间添加的, 也叫组件层。 所谓三层结构, 即: 客户端/ 应用服务器/ 数据服务器,将应用分为界面控制 ( 或者说c l i e n t 端) ,业务逻辑和中间 件。 三层应用服务器结构把应用主体分配给一个共享的主机上而不是在用户系统接口的客户 环境中。 应用服务器不驱动图形用户界面( g u i ) , 而是共享业务逻辑, 计算和数据恢复机制。 表示层逻辑主要处理用户和软件的交互。 现在最流行的莫过于视窗图形界面 ( w i m p ) 和 基于h t m ! 的界面了。 表示层的主要职责就是为用户提供信息, 以 及把用户的指令翻泽后传送 给业务层和数据层。 数据层逻辑包括处理和其他系统的 通信, 代表系统执行任务。例如数据库系统交互,和 其他应用系统的交互等。在大多数的信息系统中, 这个层的最大的功能就是存储持久数据。 还有一 个就是领域层逻辑,有时也被叫做业务逻辑。它包括输入和存储数据的计算。验 证表示层来的数据, 根据表示层的 指令指派一个数据层逻辑浏。 1 .3 .3 j 2 e e的n层体系结构 j 2 e e为构建可伸缩性的大型企业级应用提供了一个可行性建议, 它提倡将应用程序逻辑 根据功能的不同 分为多个层次,由多个应用程序组件所作成的 j 2 e e应用系统可以按组装的 不同分配到不同的计算机上。 东北大学硕士学位论文第一章 概述 mu t i - l a y 已 r ar c h i t e o t e r p l- -b e a m 日 】 卜门 l 日e rvl 翻. j sps 吕v 曰日曰 目 , 5 ejbs 抽 甘 .日6 曰r日 图1 . 1 2 e e 的n层结构 f i g i n la y e r s s t r u c t u r e o f j 2 e e 用户界面:是运行在客户端机器上的客户层组件,用于处理用户与应用程序的交互,代 表访问系 统或应用程序的 所有设 备或系 统客户端, 如可以是浏览 器、复用的窗口 应用程序或 者是其他终端设备。 表示逻辑:是运行在j 2 e e服务器上 的w e b 层组件,定义了用户界面要显示的内容和对 用户 请求处 理的 规则。 组 件可以 是j s p 页 面或s e r v l e t . 业务逻辑: 是运行在 j 2 e e服务器上的业务逻辑层组件,确定程序的业务规则,业务规 则 要经 常和数据层打交 道,由 运行在 业

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论