




已阅读5页,还剩68页未读, 继续免费阅读
(计算机应用技术专业论文)基于j2ee的企业web项目的研究与设计.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
湖北工业大学硕士学位论文 摘要 随着企业的不断发展以及虚拟企业的出现,w e b 应用正成为企业内部管理和 对外业务的首选,同时也成为一个企业信息化的重要标志。现代企业也越来越重视 利用w e b 应用来宣传管理自己,拓展自己的业务。面对复杂多变的市场环境,开 发伸缩性强、扩展性好、重用性高和易维护、易管理的w e b 应用是当前w e b 技术 发展的热点之一,但是基于传统的开发技术很难做到这一点。 j 2 e e 体系结构提供中间层集成框架用来满足无需太多费用而又需要高可用 性、高可靠性以及可扩展性的应用的需求,通过提供统一的开发平台,j 2 e e 降低 了开发多层应用的费用和复杂性,同时提供对现有应用程序集成强有力支持。j 2 e e 为搭建具有可伸缩性、灵活性、易维护性的企业w e b 应用提供了良好的机制。 正是在这样的背景下,本文以j 2 e e 体系结构为入手点,研究了如何开发基于 j 2 e e 的企业w e b 项目,以提高系统的可复用性、可扩展性和可维护性。本文以东 风雪铁龙关键绩效指标( k p i ) 及工作跟踪系统为背景,主要研究在j 2 e e 构架下 使用s t r u t sw e b 框架、基于b s 结构的企业w e b 项目的研究与设计。本文首先就 j 2 e e 技术和开源软件做了一个论述,根据当前开源技术的发展选择了适合企业应 用的开源软件,以进行企业级开发部署。接着对一个基于m v c 模式的s t r u t s 框架 进行研究,着重于讨论s t r u t s 是如何实现m v c 模式以及s u e t s 的各组件是如何协 同工作的,研究了j a v a 对象持久化技术原理,最后将s u e t s 框架应用于东风雪铁 龙企业w e b 项目的开发。此系统已交付给用户使用,用户反馈良好,从而验证了 应用该框架可以达到快速开发稳定可扩展的企业级应用。 最后本文对该系统涉及的关键技术等问题进行了详细论述,并对该领域将来 的研究进行了展望。 关键词:j 2 e e ,s t r u t s 框架,w e b 应用,m v c 设计模式,i d b c 湖北工业大学硕士学位论文 a b s t r a c t w i t ht h ed e v e l o p m e n to ft h ee n t e r p r i s e ,a n dt h ea p p e a f a l l c eo fv i r t u a le n t e r p r i s e w e ba p p l i c a t i o nh a sb e c a m et h ec h i e fc h o i c eo fe n t e r p r i s ei n n e rm a n a g e m e n ta n do u t e r b u s i n e s sa c t t h ew e ba p p l i c a t i o ni t s e l fh a sa l r e a d yb e c a m et h ei m p o r t a n ts y m b o lo f i n f o r m a l i z i n g m o d e me n t e r p r i s et e n dt ou s ew e bt og i v ep u b l i c i t yt oh i m s e l fa n d e x p a n dh i so p e r a t i o n s ot h ea p p l i c a t i o no fw 曲w h i c hh a sb e r e rd e v e l o p m e n t , m a i n t a i n a b i l i t y , e x p a n s i b i l i t y , r e p e a t a b i l i t ya n de a s ym a n a g e m e n t ,i st h eh o t s p o to ft h e w 曲t e e h n o l o g y j 2 e ea r c h i t e c t u r es u p p l i e sm i d d l e - t i e ri n t e g r a t e df r a m e w o r kt os a r i s f yt h e r e q u i r e m e n tw h i c hn e e d sal i t t l e c o s tb u th i i g ha v a i l a b l i t y , h i g h r e l i a b i l i t ya n d e x t e n s i b l i t y t h r o b g hp r o v i d e su n i f o r me x p l o i t a t i o nf l a t ,j 2 e er e d u c e st h ee x p e n s e sa n d c o m p l e x i t y t oe x p l o i tm u l t i t i e ra p p l i c a t i o n s i m u l t a n e o u s l y , p r o v i d e st h e e x i s t i n g a p p l i c a t i o nw i t hs t r o n g l ys u p p o r t j 2 e ep r o v i d e sag o o dm e c h a n i s mf o rat e l e s c o p i c , f l e x i b l ea n de a s ym a i n t a i n i n ge n t e r p r i s ew e ba p p l i c a t i o n j u s ta st h i sb a c k g r o u n d ,t h et h e s i sd i s c u s s e sh o wt od e v e l o pt h ee n t e r p r i s ep r o j e c t b a s e do nj 2 e et oi l l l p l o v et h er e u s a b i l i t y 、f l e x i b i l i t ya n dm a i n t a i n a b i l i t yo ft h e i n f o r m a t i o ns y s t e mb e g i n n i n gf r o mj 2 e es y s t e ms t r u c t u r e t l l i sa r t i c l et a k ed c a dk p i s y s t e ma sab a c k g r o u n d t h i sa r t i c l ef i r s t l yd o e sag e n e r a le l a b o r a t i o no nj 2 e e t e c h n o l o g ya n do p e ns o u r c et e c h n o l o g y , t h e nc h o o s eo p e ns o u r c et e c h n o l o g yw h i c h s u i t st h ee n t e r p r i s ea p p l i c a t i o na c c o r d i n gt ot h ed e v e l o p m e n to fc u r r e n to p e ns o u r c e t e c h n o l o g y t h e n , i te x p l o r e ss t r u t sf r a m e w o r ko nt h eb a s i so fm :v cm o d e p a y i n gm o r e a t t e n t i o nt od i s c u s sh o ws t r u t sr e a l i z e sm v cm o d ea n dh o ws t r u t s m o d u l e sw o r k s t o g e t h e r o nt h eb a s i so fs t r u t sa n d 山eh i b e m a t ef r a m e w o r k , o n cl i g h t w e i g h ij 2 e e f r a m e w o r ko fo p e ns o u r c et e c h n o l o g yi sp r o p o s e d ,w h i c hh a sb e e na p p l i e dt od c a d w e ba p p l i c a t i o n , a n dh a v ep r o v e dt ob eaf a s tt od e v e l o p ,s t a b l ea n de x p a n d a b l e e n t e r p r i s el e v e la p p l i c a t i o n a tt h ee n do ft h ep a p e r d i s e n s s e st h ek e yt e c h n i q u et h a ti n v o l v e di nt h es y s t e ma n d a n t i c i p a t e saf u t u r er e s e a r c ho ft h i sf i e l d k e y w o r d s :j 2 e e ,s t r u t sf r a m e w o r k ,w e ba p p l i c a t i o n ,m v cd e s i g np a t t e r n ,j d b c 佩毒亡工繁失港 学位论文原创性声明和使用授权说明 原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师指导下,独立进行研究工作所取 得的研究成果。除文中已经标明引用的内容外,本论文不包含任何其他个人或集体己经 发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体,均已在文中以明确方 式标明。本声明的法律结果由本人承担。 学位论文作者签名:弓岳童右日期:乒9 7 年5 月f 日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有权保留 并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授 权湖北工业大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采 用影印、缩印或扫描等复制手段保存和汇编本学位论文。 指导教师签名:叔专叱 日期:跚7 年i 月1 日 ,驾日 钮 月 一蛳 湖北工业大学硕士学位论文 第1 章引言 1 1 课题研究背景 目前,随着计算机和网络技术的不断发展和日益成熟,因特网正在演变成为 人们生产和生活中的一个重要组成部分。社会的各个领域都在努力利用现有技术 建立网络化的应用体系,进而实现信息交互和资源共享。就现代企业而言,建立 一个基于i n t e r n e t i n t r a n e t 的灵活的、易于扩展和维护的企业应用系统,是企 业适应瞬息万变的市场环境,促进自身发展壮大的必然选择。而这些信息化管理 系统的应用,为推动企业的信息化建设、提高生产效率发挥了重要的作用。但是, 随着企业业务规模的扩大和市场的发展,企业应用系统现在必须超越传统的企业 限制,将他们的内部系统与i n t e r n e t 上的其他服务系统相集成。因此,这对传统 的企业管理应用系统提出了更多的需求。主要表现在以下几个方面: 可扩展性:传统的分布服务需要支持几百甚至几千个并发用户,i n t e r n e t 中的 系统必须能够稳定地为几十万甚至上百万的并发用户提供服务。 高可用性:基于i n t e r n e t 的企业应用系统必须能够有效地进行容错处理,实 现连续不间断地提供服务。 安全:i n t e r n e t 上的企业计算要求安全的方法识别和认证用户,防止系统的未 授权使用,保护数据的完整性。 状态的可管理性:中间件系统应该让开发人员编写更少的代码,不用关心如何 管理状态,这样能够更快地完成程序开发。 持续化服务:让开发人员不用对数据访问逻辑进行编码就能编写应用程序j 能 生成更轻巧,与数据库无关的应用程序,这种应用程序更易于开发与维护。 分布共享数据对象c a c h e 服务:让开发人员编制高性能的系统,极大提高整体 部署的伸缩性。 在这种背景下,如何利用新的体系结构和技术来解决需求日益增强的企业应 用系统的问题值得我们深入的开展研究和分析。 综上所述,传统的软件体系结构已经不能适应企业信息管理复杂多变的特性 和i n t e r n e t 发展的需要,我们现在需要采用的软件结构是一个分布式的多层体系 结构。 湖北工业大学硕士学位论文 1 2 关键绩效指标简介 绩效管理是管理者和员工就工作目标与如何达成目标达成共识的过程。该过 程是由员工和他的管理者之间达成的承诺来保证完成的,并在协议中对下面有关 的问题有明确的要求和规定:1 期望员工完成的工作目标;2 员工的工作对公司 实现目标的影响;3 ,员工和主管之间应如何共同努力以维持、完善和提高员工的 绩效;4 工作绩效如何衡量,即绩效标准是什么;5 指明影响绩效的障碍并提前 排除或寻求排除的办法。 。k p i ”绩效考核体系作为目前比较成熟的绩效考核系统,现已广泛应用于企 业的绩效管理系统,它是“k e yp e r f o r m a n c ei n d e x ”的英文缩写,它的中文意思 是“关键业绩指标”。“k p i ”强调考核者必须抓住被考核者岗位最重要,最关键的 2 - 5 项业绩指标,并根据分公司的总体目标定出该岗位的绩效标准,该标准一定要 是可量化、可衡量的。 根据东风雪铁龙商务部的需求,以及现行关键绩效指标考核系统,对员工的 绩效的考核分为三部分:工作岗位对公司的影响度( c 表示) ;工作岗位对部门的影 响度( t 表示) ;本岗位工作完成度( p 表示) 。然后根据员工在三个部分中所占权重, 综合得出员工的绩效。 1 3 技术发展现状 分布式多层b s 构架克服了c s 结构和局域网为中心、系统难以扩展、维护 成本高、软件移植性差等缺点,它把表示逻辑、业务逻辑、数据库等操作分离开 来,各层相对独立。这种多层分布式计算模型( m u l t i t i e r dd i s t r i b u t e dm o d e l ) 适应了企业应用的发展要求,使企业计算具有良好的可扩展性、可靠性、稳定性、 安全性等特点。同时,通过组件( c o m p o n e n t ) 技术的使用,缩短了系统开发的周期 和降低了开发成本,大大降低了企业应用系统开发的复杂度。当前可以使用的具 有一定竞争能力的用来开发分布式多层体系结构的应用程序的中间件技术包 r 1 1 括:n e t 和j 2 e e 二大主流的组件模型。 1 3 1 n e t n e t 是微软公司提出的一种分布式运算框架,以x m l 为基础,以从w e b 服 务为核心。辅以其它各种技术实现,旨在提高i n t e r n e t 上计算资源和带宽资源的 利用率,提高工作效率。n e t 平台体系结构包括:n e t 框架、v i s u a ls t u d i o n e t 2 湖北工业大学硕士学位论文 以及n e t 服务等。 n e t 平台最重要部分是n e t 框架,n e t 框架提供了语言的中立性和语言互操 作性,是一个通用的运行环境,与操作系统有密切的联系。 与n e t 框架联系最密切的开发工具是v i s u a ls t u d i o n e t 。v i s u a l s t u d i o n e t 是语言中立的,可以把它看作是一个开放的程序设计平台,各种语言都可以被插 入到这个平台上。 n e t 服务是微软基于x m l 的w e b 服务平台,主要是帮助开发者通过“w e b 服 务”创建任何类型的设备可进行访问的协同应用。 n e t 是微软公司提出的多层分布式技术,得到了底层操作系统平台强大支持: 较好地解决w i n d o w s 应用系统的分布和通信问题,是w i n d o w s 环境专属的分布式 架构。 1 3 2j 2 e e j 2 e e 是s u n 公司推出的开放的、基于标准的平台,j 2 e e 用于开发、部署和管 理面向w e b 的以服务器为中心的应用程序。j 2 e e 是一种技术规范,它给开发人员 提供了一个工作平台,定义了整个标准的应用开发体系结构和一个部署环境。j 2 e e 技术规范以容器为中心,容器是运行在服务器上的软件实体,用于为特定类型构 件提供运行环境和服务。j 2 e e 体系结构包括四个容器:a p p l e t 容器、应用程序客 户容器、w e b 容器、e j b 容器。 j 2 e e 的最新版本是j 2 e e l 4 ,核心技术包括:j s p 2 0 ,s e r v l e t 2 4 ,e j b 3 0 和 j d b c 3 0 等。j 2 e e 容器和技术构成了体系框架,从而满足无需太多费用而又需要 高可用性、高可靠性以及可扩展性应用的需求。通过提供统一的开发平台,j 2 e e 降低了开发多层应用的费用和复杂度,同时对现有应用程序集成提供了强有力的 支持;并且有良好的向导支持打包和部署应用,添加目录支持,增强安全机制, r 0 1r 口1 提高性能“。 j 2 e e l 4 新增加w e bs e r v i c e sf o rj 2 e e 规范义了在j 2 e e 应用程序服务器中 如何支持w e b 服务。从而使得j 2 e e 开发的应用程序在不同应用服务器之间保持良 好的移植性,更适合i n t e r n e t 环境。利用j 2 e e 开发应用系统具有以下好处: 1 支持异构环境:基于j 2 e e 的应用程序具有j a v a 的跨平台性,不依赖于任 何特定的操作系统,系统可以跨平台移植,这对于企业开发很重要。 2 保留遗留i t 资产:由于企业必须适应新的商业需求,但是对于企业来说应 该充分利用己有的企业信息系统方面的投资,由于j 2 e e 拥有广泛的业界支持和一 些重要的企业计算领域供应商的参与,j 2 e e 架构可以充分利用用户原有的投资。 3 湖北工业大学硕士学位论文 3 高效开发:j 2 e e 允许公司把一些任务交给中日j 件供应商完成,而开发人员 只需要创建商业逻辑,这样就缩短开发周期,降低开发成本。 1 3 3 二种技术比较- - j 2 e e 与n e t 比较 为了满足当前企业级应用开发的需要,m i c r o s o f t 公司和s u n 公司都给出了各 自的技术方案- - m i c r o s o f t 的n e t 和s u n 的j 2 e e ,它们都是为企业应用提供分布 式、高可靠性的解决方案。它们比较如下所示: 两者在架构上有着许多相似之处,但是它们之间的差别在于: 1 n e t 是一组产品,而j 2 e e 是一组规范和标准; 2 n e t 依赖w i n d o w s 平台,而j 2 e e 支持平台中立; 3 j 2 e e 依赖j a v a 技术,而n e t 支持语言中立。 对企业应用来说,j 2 e e 和n e t 都支持多层分布式b s 应用,但j 2 e e 在内部 系统整合、系统的延展性、安全性等方面更具有优势。试研院信息化较早,软硬 件条件比较复杂,为了充分利用企业原有的软硬件资源,不能将系统捆绑于某个 平台上,因而选择具有平台中立性的j 2 e e 。 1 3 4j 2 e e 技术在企业w e b 项目运用的优势 企业w e b 应用系统对于安全性、可扩展性、快速开发等要求非常高,在对外 数据交换时要求提供对标准数据格式x m l 的支持。系统采用基于j 2 e e 平台的瘦客 户端( 浏览器) 服务器( b s ) 模式,目的是利用j 2 e e 成熟的技术规范、安全的开发 体系,其优异性能如下: 1 安全性:j a v a 验证和授权服务( j 从s ) 为j 2 e e 平台提供了用户身份验证、特 权管理和证书验证的框架和标准a p i 。 2 可扩展性:e j a 封装的业务逻辑对应用是透明的,因此对局部进行扩展和修 改不会影响系统其它部分的正常运行。 3 快速开发:复杂的商业逻辑以组件形式部署在e j bs e r v e r 中,e j bs e r v e r 集成的组件命名服务可以使组件位置透明化,简化了组件的部署和维护,使开发 过程易于分工,加快开发速度。 4 x m l 数据交换的支持:j 2 e e 平台全面支持糊l ,充分利用x l i l 平台独立性和 r f 1 j 2 e e 平台独立性,建立有效的数据交换平台“。 采用j 2 e e 平台构建企业w e b 应用项目,可以利用e j b 、j a v a b e a n 与数据库连 接、后台处理、商业逻辑等需要重复使用的功能封装成独立的组件,供j s p 页面、 4 湖北工业大学硕士学位论文 s e r v l e t 调用;并利用s e r v l e t 服务器端编程能力强的优点,控制系统流程和处理 后台事务。 基于以上研究与分析:研究j 2 e e 各种技术与开发方法,合理利用j 2 e e 框架 构建企业w e b 应用项目具有良好的实用价值。 1 3 课题研究目标 本课题的总体目标是:以东风雪铁龙有限公司商务部的现有状况为依托,综 合考虑同行业其他公司的企业结构,开发一套易推广的、易扩充的、易维护的、 具有良好人机交互界面的基于w e b 的企业管理软件,在对企业资源和数据进行集 中管理的同时,让企业员工能方便的在电脑上完成自己的工作,减少人为操作的 失误,提高企业的工作效率。根据目前各种技术方案的发展现状,综合对比它们 的优势劣势,本课题决定采用基于j 2 e e 架构分布式组件模型的解决方案。 1 4 课题研究的主要内容 本课题研究的主要内容可以概括为以下几个方面: 论文主要针对东风雪铁龙关键绩效指标和工作跟踪系统,给出了一个采用m v e 设计模式解决方案,并设计实现了相关的j s p 自定义标签库以及数据库连接池。 本文的主要内容是:首先从理论上对基于j 2 e e 的多层w e b 应用中采用m v c 设 计模式的必要性做了论述,然后研究了国内外最流行的w e b 应用框架s t r u t s 一 一个基于j 2 e e 平台、实现了w e 设计模式的框架,分析了其实现原理和特点,并 剖析了使用j a v a 代码和h t m l 语言混合在一起的开发模式存在的问题,最后针对 此问题提出了一个合理的解决方案,即使用基于m v c 模式的s t r u t s 框架对该系统 进行软件架构设计,利用j s p 自定义标签和j s p 技术实现表示层功能,利用 j a v a b e a n 组件实现业务逻辑层功能,将表示层和业务层强行分离,使系统在结构 上实现了松耦合。同时,针对于系统运行过程中大量访问数据库的实际情况,在 原有系统的基础之上开发了数据库连接池,极大地提高了系统的稳定性和安全性。 最后研究如何利用j a v a 设计模式,以增强代码的复用性以及系统的可扩展性。 5 湖北工业大学硕士学位论文 第2 章w e b 应用系统体系结构 2 1w e b 技术及其应用 w e b 技术经过十几年的发展,当前己经是整个i n t e r n e t 的重要组成部分。自 从第一个超文本文件在i n t e r n e t 上开始传播以来,w e b 技术在很多方面都有了长 足的发展。为了本文后续技术的引入,首先对w e b 中的一些概念和原理有所了解。 首先h t t p 协议中的请求响应阶段的过程是从客户请求被服务器接收到开始 直到服务器返回响应为止。这部分是w e b 应用的基础。下面详细介绍这个过程。 一般有两种h t t p 消息一请求和响应。h t t p 是基于请求响应模型。浏览器扫 开与服务器的一个连接然后发送一个请求,服务器处理请求并返回一个响应。图 2 1 示意了该过程。 用户请求 2 1 1h t t p 请求 服务器响 应 图2 1h 1 t p 请求示意图 h t t p 请求的起始行被称为r e q u e s t l i n e 。它总是在请求消息的第一行,包含 3 个独立的域。 1 h t t p 方法( g e t ,p u t ,p o s t 等) ; 2 统一资源标示( u n i v e r s a lr e s o u r c ei d e n t i f i e r u r i ) ; 3 h t t p 协议版本号; 6 湖北工业大学硕士学位论文 从服务器获取数据的h t t p 方法有好几种,其中最为常用的是g e t 和p o s t 方 法。g e t 方法是从服务器请求一个有u r i 指定的资源。当该资源是一个类似于 s e r v l e t 的产生数据的资源时,产生的数据将由响应消息返回。虽然g e t 方法也可 以传递请求参数,但p o s t 方法被用于显示的向服务器传递参数,但参数却是隐式 的出现的。 2 1 2h t t p 响应 在服务器接收到并处理了请求后,它必须返回一个h t t p 的响应到客户。响应 消息、包含一行状态信。0 个或多个头域,然后是一个标示头结束的空行以及可选 的消息体。它的格式和请求消息的格式基本类似。 2 2w e b 应用系统体系结构 2 2 1 传统的两层体系结构 图2 2 传统的两层体系结构 传统的w e b 应用系统的开发广泛的采用客户服务器( c l i e n t s e r v e r ) 模式两 层体系结构,即应用( 客户层) 和数据服务层,如图2 2 。客户端( 应用层) 提供用户 操作界面,接受数据输入,向数据服务层发出数据请求并接受返回的数据结果, 根据业务逻辑进行相关的运算,向客户显示相关信息:数据服务层接受客户端的数 据请求,做相关数据处理,并将数据集或数据处理返回客户端。客户端h a 务器两 层体系架构是一种通用的、基于消息的模块化结构,他能提高系统的灵活性、可 操作性和可扩展性。 但是两层体系结构在实际应用中已暴露出一些问题。如:客户机直接( 或通过 存储过程) 访问数据库,所有客户机均访问数据库,不利于安全控制,难以防止黑 客的恶意攻击。同时,网络流量很大,易形成网络瓶颈。还会造成数据库访问瓶 颈及数据库连接数过多,影响数据库的响应速度,降低系统性能。另外,两层应 7 湖北工业大学硕士学位论文 用体系结构还有维护、扩展方面的问题。另外如果系统非常复杂涉及到许多逻辑 处理那么如果把业务逻辑层放在客户端,由客户端来执行业务逻辑,而服务器只 负责中心数据的存储、维护等,那么这样就造成了胖客户端问题。而反过来,如 果客户端只负责显示,而业务逻辑完全是提交到服务器来处理,那么服务器就承 担很大的处理量,造成服务的负担过重”“。 2 2 2 典型的三层体系结构 用户接口 ( 第一层) 商业逻辑 ( 第二层) 服务器 ( 第三层) j a v a w e b 服务 器 图2 3 三层体系结构 在现在一些系统中,由于客户机较多,访问量和数据传输量都较大。为解决 相应的瓶颈以及出于安全因素等方面的考虑,往往采用中间件组成三层( 多层) 结 构应用体系,如图2 3 。即:客户端应用服务器数据服务器。三层体系结构中, 中间层是在用户系统接口客户端和数据库管理服务器环境之间添加的应用服务 层,应用服务层实现业务逻辑并且接受客户机的业务请求,根据请求访问数据库, 做相关处理,将处理结果返回客户机。应用服务层从物理上和逻辑上都可以独立 出来,客户机( 层) 不直接访问数据库服务器( 层) ,而是访问应用服务器( 层) 。客 户层发出的不再是数据请求而是业务( 事务) 请求。处于客户端的表示层主要处理 用户界面的交互,为用户提供信息,并且把用户的指令发送给中间业务层。数据 层逻辑包含系统的数据处理逻辑,数据库操纵的请求,实现对数据库查询、修改、 更新等功能,把运行结果提交给请求客户端”“1 。 8 凰虻叩固 湖北工业大学硕士学位论文 2 3w e b 设计模式 随着j s p 和s e r v l e t 技术的日益成熟,开发人员开始尝试在3 a v aw e b 应用开 发中采用m v c 模式,以实现软件代码更好的可维护性和可重用性。a w t ,j f c s w i n g , j s p 都可以用来实现m v c 结构中的v i e w 部分,来实现表示层功能:j a v a b e a n 和e j b 则对应的是m o d e l 的部分,即在这部分程序代码中包含具体的业务逻辑;而s e n ) l e t 则兼具两者的功能,并可以作为控制器起到控制调度的功能。 在j s p 与s e r v l e t 技术发展的过程中,出现过两种典型的j s p 设计模式。 2 3 1j s pw e b 设计模式1 在j s p 技术的发展初期,由于其开发的便捷性,很快成为w e b 应用的热门技 术。在j s p 页面中可以很容易地同时实现内容的显示,业务逻辑的编写以及流程 的控制,从而快速地完成应用开发。最初的j a v aw e b 应用几乎全部由j s p 页面构 成,这种以j s p 为总心的开发模型被称为设计模式1 ( m o d e l l ) 。其具体实现方式如 图所示。 图2 4j s p 设计模式1 在设计模式1 中,j s p 页面负责接收处理客户端w e b 浏览器发送的请求,并在 处理后直接进行响应。其问一般会借助j a v a b e a n 处理复杂的业务逻辑,例如:连 接数据源,对收取的数据进行加工处理等。 m o d e ll 这种模式的最大优势是实现起来比较简单,适合快速开发小规模的项 目,但是从大的软件工程角度来看,其局限性也是非常明显的。当相关的控制逻 r 口1 辑变得越来越复杂时,这种模式必然会导致代码的可重用性及可扩展性的下降“。 9 湖北工业大学硕士学位论文 2 3 2j s pw e b 设计模式2 设计模式2 ( m o d e l 2 ) 则是m v c 设计模式的一种具体实现方式。在m o d e l 2 中采 用s e r v l e t 作为控制器( c o n t r o l l e r ) ,负责接受客户端w e b 浏览器发送来的所有 请求,并依据处理意见的不同结果,转发到对应的j s p 页面( v i e w ) 实现在浏览器 客户端的显示。 通常在s e r v l e t 中只包含了控制逻辑和一些简单的处理逻辑,更加复杂的业 务处理逻辑则借助特定的j a v a b e a n 具体实现,例如:利用j a v a b e a n 实现与数据库 的连接,对数据库中的数据信息进行维护修改等。 其具体的实现方式如下图所示。 图2 。5j s p 设计模式2 由于引入了m 1 c 设计模式,m o d e l 2 实际上实现了基于组件的开发,在整个软 件开发过程中实现了具体清晰的逻辑划分,能够有效的区分不同的角色,这就更 适合于大规模系统的开发和管理。 湖北工业大学硕士学位论文 第3 章系统运行平台及相关技术 3 1 系统体系结构 软件体系结构是一个软件系统的组织结构。一般地说,一个系统的软件体系 结构由一组计算构件、构件之间的交互组成的。一个特定的系统是用一些构件的 集合和构件之间的交互来定义的,而这样的系统又可以在大型的系统设计中作为 一个复杂的元素。客户和服务器、数据库、分层系统中的层都是所述的构件的实 例。软件体系结构不仅指定了系统的组织结构和拓扑结构,而且还显示了系统需 求和构成系统的元素之间的对应关系,提供一些设计决策的基本原理“。 企业w e b 项目的体系结构设计是系统设计中的一项重要工作。系统结构设计 的好坏。不仅直接影响到系统开发的难度、周期和频率,而且还会影响到系统运 行的效率、安全性以及系统的可维护性、可扩展性等。因此,在系统结构设计过 程中,应当充分的综合考虑整个系统各个方面的因素,如系统需求复杂度、预计 系统负载、开发周期、系统可扩展性需求、硬件条件等,设计出合理的、切实可 行的系统结构。 3 1 。1 关键绩效指标及工作跟踪系统架构设计 在进行系统体系结构设计时,要结合绩效考核系统业务的特点,充分考虑如 何更好的满足业务的各项需求。该系统我们采用基于b s 的j 2 e e 多层结构。 为了适应系统应用的特点,通过分析可知,系统由于下设部门和岗位较多, 采用“总公司+ 部门+ 个人”多级系统的结构模式能够满足业务的要求,而各个下 设机构的工作人员数量繁多,分布地域广泛,并且系统需求的变化可能会较为频 繁,所以,我们采用b s 模式,充分发挥b s 模式“一处部署,各处使用”的优 点。系统用户在使用系统时,只需在接入网络的计算机上使用浏览器输入帐号、 密码即可登陆使用系统,进行相关绩效的考核。 东风雪铁龙关键绩效跟踪系统采用基于j 2 e e 的多层体系结构,具有跨平台应 用的能力,应用软件系统具有相对的独立性,不依赖任何特定的操作系统、特定 的数据库系统、特定的中间件应用服务器和特定的硬件环境,便于系统今后在不 同的系统平台、不同的硬件环境下安装、部署、升级移植,从而保证了系统具有 一定的可伸缩性和可扩展性,下面介绍系统采用的体系结构。 湖北工业大学硕士学位论文 3 1 2 关键绩效跟踪系统模型设计 开发模式的选择是建立在软件体系结构的基础之上的,一定的软件体系结构 决定了一定形式的开发模式。因为软件体系结构在一定程度上,规定了在开发过 程中进行应用系统设计、开发、测试、人员分配等一系列活动中所应遵循的步骤。 因此恰当的软件体系结构一般都能很好地体现开发模式的四个特点,而合理的开 发模式对软件系统的成功具有关键性的作用。 针对关键绩效指标及工作跟踪系统的特点,我们也选用了j 2 e e 的体系结构, 应用服务器为t o m c a t 4 1 2 ,数据库为m y s q l 4 0 开发环境的开发模式,如图所示: 吨蜀也 鬣雾固 一愈 n m t 服务器一_ 图3 1t o m c a t 开发环境下的开发模型 1 客户层:采用“瘦客户”方式,为w e b 浏览器。客户机上的浏览器通过h t t p , 向w e b 服务器发出请求信息,接收返回结果,并显示w e b 页面。 2 w e b 层:w e b 层由j s p 页面构成。在本系统中,w e b 层接收用户的请求信息并 通过a c t i o n 来调用业务层中的j a v a b e a n 组件,向最终用户显示用户界面。 3 业务层:业务层包含j a v a b e a n 组件。j a v a b e a n 组件封装着业务逻辑和业务 r lc 1r c 1 规则,是可重用的“”“。 4 数据层:数据层负责数据持久性的存储。主要包括关系数据库系统。 针对本系统选用了基于m v c 模型的著名的开源框架s t r u t s ,它是成熟的w e b 层框架,具有组件的模块化、灵活性和重用性的优点,同时简化了基于吖c 的w e b 应用程序的开发。其对业务逻辑,控制逻辑和表示层进行了明确的分工,层次架 构清晰,整个系统的控制逻辑用一个配置文件统一管理,通过配置文件实现服务 器端和客户端验证,支持多语种等。 对s t r u t s 的改进方面:s t r u t s 没有实现查询分页,我们通过自定义的分页标 签实现表示层的一致性:对于错误异常处理和正常提示功能,封装了通用的 湖北工业大学硕士学位论文 s p i d e r e r r o r 类,利用j s p 页面进行表现,以实现系统界面及调用的一致性:日志 的记录采用l 0 9 4 j ;封装了s t r u t s 的基类a c t i o n f o r m 类,加入分页信息;封装了 s t r u t s 的a c t i o n 类,来实现对u r l 中不同的参数执行不同的动作。 3 2j 2 e e 体系结构 自从1 9 9 5 年j a v a 问世以来,j a v a 程序设计语言和j a v a 平台技术在信息技术 的发展中扮演着越来越重要的角色,同时随着网络技术的不断发展为商业事务的 平台奠定了坚实的基础,可扩展性、灵活性和易维护性也逐渐成为商业软件所必 需具备的属性。正是在上述环境下诞生了j 2 e e 技术,它为开发企业级的应用定义 了完整的体系结构。 j 2 e e 是j a v a 2 平台的企业级版本( j a v a 2p l a t f o r me n t e r p r i s ee d i t i o n ) ,是 由s u n 公司于1 9 9 7 年提出的一个构造企业级应用的平台,是一种开放的工业标准, 目前已经得到了3 0 多个厂商的支持并且提出了各自的产品。因为提供商己经继承 了j a v a 虚拟机1 v m ( j a v av i r t u a lm a c h i n e ) ,它在操作系统之上为应用提供了一 个通用的运行环境,这使得j 2 e e 支持跨平台的开发,真正实现了j a v a 平台的 “w r i t eo n c e ,r u na n y w h e r e ”的准侧。 3 2 1j 2 e e 概述 从整体上讲,j 2 e e 是使用j a v a 技术开发企业级应用的一种事实上的工业标准, 它是j a v a 技术不断适应和促进企业级应用过程中的产物。目前,j a v a2 平台有3 个版本,它们是适用于小型设备和智能卡的j a v a2 平台m i c r o 版( j a v a2p l a t f o r m m i c r oe d i t i o n ,j 2 m e ) 、适用于桌面系统的j a v a2 平台标准版( j a v a2p l a t f o r m s t a n d a r de d i t i o n ,j 2 s e ) 、适用于创建服务器应用程序和服务的j a v a2 平台企 r 1 ,1 业版( j a v a2p l a t f o r me n t e r p r i s ee d i t i o n ,j 2 e e ) “。 j 2 e e 平台的设计思想是:对按照基于组件的应用模型设计的分布式应用提供 一个简单而统一的标准。j 2 e e 技术的基础就是核心j a v a 平台或j a v a2 平台的标 准版,j 2 e e 不仅巩固了标准版中的许多优点,如”一次编写、随处运行”的特性、 方便存取数据库的j d b ea p i ,c o r m 技术以及能够在i n t e r n e t 应用中保护数据的 安全模式等等,同时还提供了对e j b ( e n t e r p r i s ej a v a b e a n s ) ,j a v as e r v l e t s a p i ,j s p ( j a v as e r v e rp a g e s ) 以及x m l 技术的全面支持。其最终目的就是成为一 个能够使企业开发者大幅缩短投放市场时间的体系结构。 而j 2 e e 所提供的中间层集成框架用来满足无需太多费用而又能达到高可用 湖北工业大学硕士学位论文 性、高可靠性以及可扩展性的应用需求。通过提供统一的开发平台,j 2 e e 降低了 开发多层应用的费用和复杂性,并且对现有应用程序集成提供了强有力的支持同 时提供了良好的向导、打包和部署应用支持,增强了安全机制,提高了系统的性 能 1 8 r 2 1 。 3 2 2j 2 e e 的结构 j 2 e e 平台提供了一个多层分布式应用程序模型,这意味着应用程序的各个不 同的部分能够运行在不同的设备上。在传统的两层模式中,客户端担当了过多的 角色而显得臃肿,虽然程序在第一次部署的时候比较容易,但难于升级或改进, 同时可伸展性也不理想。而且这类程序通常基于某种专有的协议在网络上传输数 据,这样就使得重用业务逻辑和界面逻辑非常困难。然而多层结构的设计极大地 简化了开发、配置和维护企业应用的过程,它最大的优点就在于将企业的业务逻 辑同系统服务和用户接口分开,并且提供了一系列的底层服务,如事务管理、缓 冲池、安全保障等,使得开发者能够将精力集中于企业的业务逻辑,而无须过多 r o o q l 地关心与业务逻辑不太相干的系统环境等“。 j 2 e e 的多层企业级应用模型将两层化模型中的不同层面切分成许多层,一个 多层化应用能够为不同的服务提供一个独立的层,以下是j 2 e e 典型的四层结构, 其逻辑结构如图3 2 所示: j 2 e e a p p l i c a t i o n l j 2 e e a p p l i c a t i o n 2 屠屠习 图3 2j 2 e e 四层模型 1 4 c 1 i e n t m a c h i n e j 2 e e s e r v e r m a c h i n e j 2 e e s e r v e r m a c h i n e 湖北工业大学硕士学位论文 1 运行在客户端机器上的客户层( c l i e n t t i e r ) 组件 2 运行在j 2 e e 服务器上的w e b 层( w e bt i e r ) 组件 3 运行在j 2 e e 服务器上的业务逻辑层( b u s i n e s st i e r ) 组件 4 运行在e i s 服务器上的企业信息系统( e n t e r p r i s ei n f o r m a t i o ns y s t e m ) 层软件 上述的四层逻辑结构通常是分布在三层物理结构中的,其中客户层运行在客 户机上面,w e b 层和业务逻
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广播操七彩阳光课件
- 广州风神安全培训课件
- 物业租赁合同的注意问题
- 2025湖南株洲市茶陵县总工会工人文化宫建设项目专业技术人员招聘1人考前自测高频考点模拟试题及参考答案详解
- 安全培训改善效果汇报
- 没有结婚证的协议离婚5篇
- 2025年河北唐山幼儿师范高等专科学校选聘工作人员35人模拟试卷及一套答案详解
- 服务水平长久保障保证承诺书9篇
- 2025吕梁市事业单位招聘博士研究生模拟试卷及1套完整答案详解
- 2025湖南郴州嘉禾县事业单位第一批招聘引进高层次人才和急需紧缺人才13人考前自测高频考点模拟试题附答案详解(考试直接用)
- 2025年picc置管与维护临床护理实践指南
- JJF 2257-2025大气挥发性有机物在线监测仪校准规范
- 2025年浙江省中考科学试题卷(含答案解析)
- 【课件】第十四章第四节跨学科实践:制作简易热机模型+2025-2026学年人教版九年级物理
- 家电清洗培训
- 汽车零部件制造行业发展报告
- 修井机培训课件
- 医学科普文章写作技巧
- 物业高端化规定
- 采暖补贴审计方案(3篇)
- 锂电池公司管理制度
评论
0/150
提交评论