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

(计算机应用技术专业论文)基于struts架构的web应用系统的设计与研究.pdf.pdf 免费下载

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

文档简介

摘要 在传统的客户机服务器( c l i e n t s e r v e r , c s ) 体系架构的企业应用系统 开发中,数据一般存放在服务器上,应用程序一般存放在客户端计算机上。 这样的系统虽然解决了数据共享等问题,但却具有不易维护、操作风格不一 致、能够处理的数据类型不易扩展等缺点。随着网络应用系统的发展,传统 c s 模式应用系统的缺点不断暴露出来,促使b s 模式应用系统的产生和发 展。 随着w e b 应用技术的发展和逐渐成熟,基于浏览器n 务器( b r o w s e r s e r v e r , b s ) 结构的多层体系结构受到广泛的应用。采用基于b s 体系结构 的w e b 应用系统将传统的基于c s 体系结构的应用系统的分解开来,构成 由一个数据服务器和多个w e b 应用服务器组成的多层体系结构。采用这种体 系结构,首先它简化了客户端,只需安装通用的浏览器软件。再次,它使用 户的操作变得更简单。不仅有利于对系统进行更新和维护,也方便企业对数 据进行集中管理,提高工作效率和服务质量,减少管理决策的失误。在b s 模式基础上发展起来的m v c 设计模式分离了数据的控制和数据的表现,以适 应越来越复杂的多层w e b 应用系统的设计需求,因此,采用基于m v c 设计 模式开发w e b 应用成为开发人员的首选。 j a k a t a s t r u t s 是a p a c h e 软件组织提供的一项开放源代码项目,它为j a v a w e b 应用提供了m v c 框架,尤其适用于开发大型可扩展的w e b 应用,使得 开发人员可以把精力集中在如何解决实际业务问题上。此外,s t r u t s 框架提供 了许多可供扩展和定制的地方,使得应用程序可以方便的扩展框架,来更好 地适应用户的实际需求。一旦掌握了s t r u t s ,就可以大大简化w e b 应用的开 发过程,提高开发效率,缩短开发周期。 本文首先分析了基于j 2 e e 平台构建应用系统的优势,其次深入细致的 研究了m v c 设计模式以及基于该模式的s t r u t s 应用框架,接着详细探讨基于 s t r u t s 框架实现大港油田生产经营动态分析系统,对系统中应用最广泛的数据 访问对象设计模式( d a t aa c c e s so b j e c t 。d a o ) 进行了介绍,并实现了其在 系统中的应用。最后对系统开发中的经验加以总结。通过采用s t r u t s 开发本 系统,将业务逻辑和显示页面分离开来,简化了每个阶段的工作,并且规范 了整个系统的开发,提高了代码质量和系统的开发效率,使该系统具有高性 能、可跨平台、易于扩展、易于管理和维护等优点。 关键字:j 2 e e ,s t r u t s ,m 、,c 框架,设计模式,数据访问对象模式 a b s t r a c t i nt h et r a d i t i o n a l e n t e r p r i s ea p p l i c a t i o ns y s t e m o f c l i e n t s e r v e r ( c s ) a r c h i t e c t u r e ,d a t aa r eo f t e ns a v e di ns e r v e r sa n da p p l i c a t i o np r o g r a ma r es a v e di n c l i e n t s a l t h o u g ht h es y s t e mc a ns e t t l et h ep r o b l e mo fd a t as h a r i n g , i th a st h e d i s a d v a n t a g eo fh a r dm a i n t e n a n c e ,o p e r a t i o nv a r i a n c ea n dh a r de x p a n d a b i l i t yo f d a t at y p e w i t ht h ed e v e l o p m e n to fn e t w o r ka p p l i c a f i o ns y s t e m ,t h ed e f e c t o f t r a d i t i o n a lc sp a t t e r n sa p p l i c a t i o ni sa l w a y sd i s c o v e r e da n di tu r g e st h ep r o d u c t i o n a n dd e v e l o p m e n to fb r o w s e r s e r v e ra p p l i c a t i o ns y s t e m a l o n gw i t ht h ed e v e l o p m e n ta n dg r a d u a lm a t u r i t y o fw e ba p p l i c a t i o n t e c h n i q u e ,m u l t il a y e ra r c h i t e c t u r eb a s e do nb r o w s e r s e r v e rf b s ) a r c h i t e c t u r ei s w i d e l ya p p l i e dt oc o n s t r u c ta p p l i c a t i o ns y s t e m t h ew e ba p p l i c a t i o ns y s t e mb a s e d o nb sm u l f i l a y e ra r c h i t e c t u r ei n s t e a do fc st w o - l a y e ra r c h i t e c t u r ei sm a d eu po f o n ed a t as e w e ra n ds e v e r a lw e ba p p l i c a t i o ns e r v e i s ,a p p l y i n gt h i ss y s t e m a r c h i t e c t u r e f i r s ti tm a k e sc l i e n te n de a s i e ra n do n l yn e e d si n s t a l lc o m m o n b r o w s e rs o f t w a r e s e c o n d l y , i tm a k e st h eo p e r a t i o no fu s e r ss i m p l e r i ti s c o n v e n i e n tn o to n l yt ou p d a t ea n dm a i n t a i ns y s t e mb u ta l s ot oc e n t r a l l ym a n a g e d a t aa n di m p r o v et h ee f f i c i e n c yo fw o r ka n dt h eq u a l i t yo fs e r v i c ea n dr e d u c et h e m i s t a k ew h e nm a n a g i n ga n dm a k i n gd e c i s i o n s t h em o d u l e v i s u a l c o n t r o ld e s i g n p a t t e r n sd e v e l o po nt h eb a s eo fb sp a t t e r n sa n di td i v i d e sd a t ac o n t r o la n dd a t a v i s u a li no r d e rt oa p p l yt h ed e s i g np a t t e r no fm u l t i l a y e rw e ba p p l i c a t i o ns y s t e mo f m o r ea n dm o r ec o m p l i c a t e d s oi ti st h ef i r s ts e l e c t i o no fd e v e l o p e rt ob eu s e dt o d e v e l o pw e ba p p l i c a t i o nb a s e d o nm v c d e s i g np a t t e r n s j a k a t a - s t r u t si sa nc o d e - o p e np r o j e c to fa p a c h es o f t w a r eo r g a n i z a t i o n i t p r o v i d e sm v ca r c h i t e c t u r ef o rj a v aw e ba p p l i c a t i o n ,e s p e c i a l l ya p p l y i n gf o r d e v e l o p i n gg r e a te x p a n s i b l ew e ba p p l i c a t i o n i tc a nm a k ed e v e l o p e rp a yt h e i r a t t e n t i o ni nh o wt os e t t l eb u s i n e s sp r o b l e m b e s i d e s ,i tp r o v i d e sm a n ye x p a n s i b l e a n dc u s t o m - b u i l tf u n c t i o n sw i t c hc a nm a k e a p p l i c a t i o np r o g r a me x p a n d a r c h i t e c t u r ec o n v e n i e n t l yt oa p p l yc u s t o m e r sn e e d s o n c ey o um a s t e rs t r u t s ,y o u c a l lm a k ed e v e l o p m e n tp r o c e s so fw e ba p p l i c a t i o nm u c he a s i e r , i m p r o v e d e v e l o p i n ge f f i c i e n c ya n ds h o r t e nd e v e l o p i n gc y c l e i i i nt h i sa r t i c l e ,if i r s ta n a l y s et h ea d v a n t a g eo fb u i l d i n ga p p l i c a t i o ns y s t e m b a s e do nj 2 e ep l a t f o r m ,m v cp a t t e r n sa n ds t r u t sa p p l i c a t i o na r c h i t e c t u r eb a s e d o nm v cp a t t e r n s t h e nt h r o u i 曲d a g a n go i lf i e l dd y n a m i ca n a l y z i n gs y s t e mo f p r o d u c t i o na n dm a n a g e m e n t ,ii m p l e m e n ts t r u t sa p p l i c a t i o ni nt h es y s t e mf r o m m o d u l e ,v i s u a la n dc o n t r o lo ft h r e e - l a y e ra n da l s oi m p l e m e n td a od e s i g np a t t e r n s w h i c hi su s e dm o s t l y f i n a l l yis u mu pt h ee x p e r i e n c eo ft h es y s t e md e v e l o p m e n t d e v e l o p i n gt h es y s t e mw i t hs t r u t sc a l ld i v i d eb u s i n e s sl o # ca n dv i s u a l ,s i m p l et h e j o bo fe v e r yp e r i o d ,s t a n d a r d i z ed e v e l o p m e n to f t h ew h o l es y s t e m ,a n di m p r o v e q u a l i t yo ft h ec o d ea n de f f i c i e n c yo fd e v e l o p i n gs y s t e m ,w h i c hc a nm a k et h e s y s t e m h a v et h ea d v a n t a g eo fh i g hp e r f o r m a n c e ,c r o s s p l a t f o r md e v e l o p m e n t s u p p o r t ,e a s ye x p a n s i b i l i t ya n de a s ym a i n t e n a n c e k e yw o r d s :j 2 e e ,s t r u t s ,m v ca r c h i t e c t u r e ,d e s i g np a t t e r n s ,d a o i u 此页若属实请申请人及导师签名。 独创性声明 本人声明,所呈交的论文是我个人在导师指导下进行的研究工 作及取得的研究成果。据我所知,除了文中特别加以标注和致谢 的地方外,论文中不包含其他人已经发表或撰写过的研究成果, 也不包含为获得武汉理工大学或其它教育机构的学位或证书而使 用过的材料。与我一同工作的同志对本研究所做的任何贡献均已 在论文中作了明确的说明并表示了谢意。 研究生签名:专盛逮日期型! i :! :! 。 关于论文使用授权的说明 本人完全了解武汉理工大学有关保留、使用学位论文的规定, 即:学校有权保留送交论文的复印件,允许论文被查阅和借阅; 学校可以公布论文的全部内容,可以采用影印、缩印或其他复制 手段保存论文。 ( 保密的论文在解密后应遵守此规定) 研究生签名弛导师签名:麴 日期 注:请将此声明装订在论文的耳录前。 i v t e ,97 , 武汉理工大学硕士学位论文 1 1 课题背景 第一章绪论 近年来,以w e b 为核心的企业内部网或外部网正吸引着越来越多的企 业。低成本、简单易用的客户浏览器能随时随地连接到企业的w e b 站点上查 阅自己所需的数据。客户端操作界面的一致性以及服务器端的开放和基于标 准的连接方案,大大加强了企业与外部的联系。同时,动态的、交互式的信 息发布改进了企业对客户的服务质量,增加企业的商业机会 随着i n t c r n c t 技术的飞速发展和电子商务的普及应用,世界进入了前所未 有的全球化信息化时代,为企业的发展提供了种种机遇和更为广阔的发展空 间,将企业卷入信息化的大潮中来,企业信息化是企业现代化管理的标志, 是企业快速响应市场变化的必备条件。 企业信息化是指将企业的生产过程、物料移动、事务处理、现金流动、 客户交互等业务过程数字化,通过各种信息系统网络加工生成新的信息资源, 提供给各层次的人们洞悉、观察各类动态业务中的一切信息,以做出有利于 生产要素组合优化的决策,使企业资源合理配置,适应瞬息万变的市场经济 竞争环境,求得最大的经济效益。 企业信息化要求企业管理系统在开展业务时,适时根据市场需求变化进 行相应的扩展维护。然而由于传统的w e b 应用开发工具( a s p 、j s p ) ,将页面 显示、商业逻辑和数据处理大部分都集中在页面代码中,使得商业逻辑、数 据处理和页面显示强耦合,所以w e b 应用扩展维护比较困难,而且也不利于 开发人员分工协作,所以在大型w e b 应用开发中愈发显得力不从心,迫切需 要一种全新的w e b 应用设计技术和开发工具。以便将页面显示、商业逻辑和 数据处理相分离,最大限度的降低系统各部分之间的耦合性,从而增强系统 的可扩展维护性,提高代码重用率,使系统的层次结构更加清晰,易于分工 协作,充分发挥开发人员的各自特长,快速响应企业的经营战略业务逻辑变 化。正是基于这一需求,产生了m v c 架构技术及s t r u t s 技术。 武汉理工大学硕士学位论文 1 2 研究现状 s t r u t s 是a p a c h e 软件基金下j a k a r t a 项目的一部分。除s t r u t s 之外, 还有其他成功的开源产品,包括t o m c a t 、a n t 和v e l o c i t y 。s t r u t s 开始的代 码基础从2 0 0 0 年5 月开始开发,直到2 0 0 1 年6 月,才发布了1 0 版本。这 其间有3 0 多个开发者参与进来,并有数千人参与到讨论组中。s t r u t s 代码 基础由一个志愿的c o n n i t t e r 团队来管理。 s t r u t s 在a p a c h e 软件许可 a s f ,l i c e n s e 下对公众是免费的。使用此软 件没有任何获得和再现成本。不像其他一磐开源许可,a p a c h e 软件许可对商 业用途是友好的。我们可以在你的商业项目中使用s t r u t s ,并自由分发s t r u t s 库。也可以将s t r u t s 组件集成到自己的框架中,就像他们是我们自己编写的 一样。也许这也是人们在商业用途中选择s t r u t s 的原因之一。 s t r u t s 作为一个开放原代码的应用框架,在最近几年得到了飞速的发展, 在j s pw e b 应用开发中应用得非常广泛,有的文献上说它已经成为j s pw e b 应用框架的事实上的标准。s t r u t s 是一种具体实现m v c 2 的程序框架。包括表 示层( v i e w ) 、控制层( c o n t r o l l e r ) 、和模型层( m o d e l ) 三层结构。其表示层 使用s t r u t s 标签库构建。来自客户的所有需要通过框架的请求统一由叫 a c t i o n s e r v l e t 的s e r v l e t 接收( a c t i o n s e r v l e ts t r u t s 已经为我们写好了, 只要您应用没有什么特别的要求,它基本上都能满足您的要求) ,根据接收的 请求参数和s t r u t s 配置( s t r u t s c o n f i g x m l ) 中a c t i o n m a p p i n g ,将请求送给 合适的a c t i o n 去处理,解决由谁做的问题,它们共同构成s t r u t s 的控制器。 a c t i o n 则是s t r u t s 应用中真正干活的组件,开发人员一般都要在这里耗费大 量的时间,它解决的是做什么的问题,它通过调用需要的业务组件( 模型) 来完成应用的业务,业务组件解决的是如何做的问题,并将执行的结果返回 一个代表所需的描绘响应的j s p ( 或a c t i o n ) 的a c t i o n f o r w a r d 对象给 a c t i o n s e r v l e t 以将响应呈现给客户。 总的说来,目前有很多的组织和个人参与到s t r u t s 框架的开发中来,使 得s t r u t s 保持了高速成长。与此同时,利用s t r u t s 作为开发框架的应用越 来越多,最终使s t r u t s 成为了w e b 应用m v c 模式中v c 部分事实上的标准。 2 武汉理工大学硕士学位论文 1 3 项目介绍 本项目是通过开发通用数据采集和数据接口的程序,实现生产动态、市场 开发、规划计划数据的集成,选用领先的业务分析工具c o g n o s ,实现对“大 港油田集团生产经营分析系统”数据库中各种数据源的数据访问、查询,建 立和发布基于系统业务分析的多种报表,企业在线联机分析( 0 l a p ) 、方便展 现企业业务数据、创建和分发动态报表、多维信息分析等功能。从而有效提 高企业管理者和决策者分析企业数据、做出企业决策的能力和效率。 本项目主要包括四方面内容:1 、开发通用的数据采集程序,实现对生产、 市场、规划计划等部门的生产报表数据的自动采集。2 、开发通用的数据查询 程序,可以满足用户对生产、市场报表数据的组合条件查询。3 、编制固定格 式的常用报表,满足集团公司和各二级单位领导对报表的查询需求。4 、生产、 市场报表数据的在线联机分析( 0 l a p ) 、创建和分发动态报表。 1 4 结构安排 本文第一章介绍了课题的相关背景知识,研究现状和整个论文的结构安 排。第二章介绍了j 2 e e 系统框架和m v c 设计模式,先对j 2 e e 进行了概述, 接着从对比w 曲开发的常用模式入手,引导出m v c 设计模式,并对m v c 设 计思想和包含的模式进行了介绍,同时也讨论了m v c 的优势和不足。第三章 介绍了s t r u t s 框架的相关理论知识,涉及到s t r u t s 的体系结构、配置文件和基 本组件、控制流、以及开发流程。第四章是s t r u t s 的实际应用开发,详细探讨 基于s t r u t s 框架实现大港油田生产经营动态分析系统,对系统中应用最广泛 的数据访问对象设计模式( d a t aa c c e s so b j e c t ,d a o ) 进行了介绍,并实现 了其在系统中的应用。最后一章对系统开发中的经验加以总结。 武汉理工大学硕士学位论文 第二章j 2 e e 系统框架和m v c 设计模式 2 1 j 2 e e 概述 企业级多层应用系统的开发一直面临着重大挑战:一方面,企业级多层 应用系统面对的是一个异构的分布式环境,它必须支持与已有系统的集成性 和与其它系统的互操作性;另一方面,作为客户、合作伙伴和硷业内部提供 信息服务平台,企业级多层应用系统还必须具有高可靠性、安全性和可伸缩 性。这些要求再加上复杂多变的用户需求和不断伸缩的交付时间,使得企业 级多层应用系统的开发越来越困难。开发商和广大程序员一直在努力推动和 殷切期待一个成熟的、标准的企业级应用平台来简化和规范企业级应用系统 的开发和部署。j a v a 技术的出现,尤其是j 2 e e ( j a v a 2p l a t f o r me n t e r p r i s e e d i t i o n ) 平台的推出正是这种努力的结果,也使得企业级应用系统的开发由 此变得更加快速和方便。需要指出的是,j 2 e e 本身是一个标准,它为不同厂 商创建平台产品提供了标准,使不同j 2 e e 平台产品之间的交互成为可能。 2 1 1j 2 e e 的概念 目前,j a v a2 平台有3 个版本,它们是适用于小型设备和智能卡的j a v a2 平台m i c r o 版( j a v a2p l a t f o r mm i c r oe d i t i o n ,j 2 m e ) 、适用于桌面系统的j a v a 2 平台标准版( j a v a2p l a t f o r ms t a n d a r de d i t i o n ,j 2 s e ) 、适用于创建服务器 应用程序和服务的j a v a 2 平台企业版( 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 nj 2 e e ) 。 j 2 e e 是一种利用j a v a2 平台来简化企业解决方案的开发、部署和管理相 关的复杂问题的体系结构。j 2 e e 技术的基础就是核心j a v a 平台或j a v a2 平台 的标准版,j 2 e e 不仅巩固了标准版中的许多优点,例如”编写一次、随处运行 ”的特性、方便存取数据库的j d b ca p i 、c o r b a 技术以及能够在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 sa p i 、j s p ( j a v as e r v e rp a g e s ) 以及x m l 技术的全面支持。其最 终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构 【1 2 】。 j 2 e e 体系结构提供中间层集成框架用来满足无需太多费用而又需要高可 4 武汉理工大学硕士学位论文 用性、高可靠性以及可扩展性的应用的需求。通过提供统一的开发平台,j 2 e e 降低了开发多层应用的费用和复杂性,同时提供对现有应用程序集成强有力 支持,完全支持e n t e r p d s ej a v a b e a n s ,有良好的向导支持打包和部署应用, 添加目录支持,增强了安全机制,提高了性能。 2 1 2j 2 e e 的优势 j 2 e e 为搭建具有可伸缩性、灵活性、易维护性的商务系统提供了良好的 机制: 保留现存的r r 资产:由于企业必须适应新的商业需求,利用已有的企业 信息系统方面的投资,而不是重新制定全盘方案就变得很重要。这样,一个 以渐进的( 而不是激进的,全盘否定的) 方式建立在已有系统之上的服务器 端平台机制是公司所需求的。j 2 e e 架构可以充分利用用户原有的投资,如一 些公司使用的b e at u x e d o 、m mc i c s ,m me n c i n a , 、i n p r i s e v i s i b r o k e r 及 n e t s c a p ea p p l i c a t i o ns e r v e r 。这之所以成为可能是因为j 2 e e 拥有广泛的业界 支持和一些重要的t 企业计算领域供应商的参与。每一个供应商都对现有的客 户提供了不用废弃已有投资,进入可移植的j 2 e e 领域的升级途径。由于基于 j 2 e e 平台的产品几乎能够在任何操作系统和硬件配置上运行,现有的操作系 统和硬件也能被保留使用瞄j 。 高效的开发:j 2 e e 允许公司把一些通用的、很繁琐的服务端任务交给中 间件供应商去完成。这样开发人员可以集中精力在如何创建商业逻辑上,相 应地缩短了开发时间。高级中间件供应商提供以下这些复杂的中间件服务: 状态管理服务:让开发人员写更少的代码,不用关心如何管理状态,这样 能够更快地完成程序开发。 持续性服务:让开发人员不用对数据访问逻辑进行编码就能编写应用程 序,能生成更轻巧,与数据库无关的应用程序,这种应用程序更易于开发 与维护。 分布式共享数据对象c a c h e 服务:让开发人员编制高性能的系统,极大 提高整体部署的伸缩性。 支持异构环境:j 2 e e 能够开发部署在异构环境中的可移植程序。基于 j 2 e e 的应用程序不依赖任何特定操作系统、中间件、硬件。因此设计合理的 基于j 2 e e 的程序只需开发一次就可部署到各种平台。这在典型的异构企业计 武汉理工火学硕士学位论文 算环境中是十分关键的。j 2 e e 标准也允许客户订购与j 2 e e 兼容的第三方的 现成的组件,把他们部署到异构环境中,节省了由自己制订攘个方案所需的 费用。 可伸缩性:企业必须要选择一种服务器端平台,这种平台应能提供极佳的 可伸缩性去满足那些在他们系统上进行商业运作的大批新客户。基于j 2 e e 平 台的应用程序可被部署到各种操作系统上。例如可被部署到高端u n i x 与大 型机系统,这种系统单机可支持6 4 至2 5 6 个处理器。( 这是n t 服务器所望 尘莫及的) j 2 e e 领域的供应商提供了更为广泛的负载平衡策略。能消除系统 中的瓶颈,允许多台服务器集成部署。这种部署可达数千个处理器,实现可 高度伸缩的系统,满足未来商业应用的需要。 稳定的可用性:一个服务器端平台必须能全天候运转以满足公司客户、合 作伙伴的需要。因为i n t e r n e t 是全球化的、无处不在的,即使在夜间按计 划停机也可能造成严重损失。若是意外停机,那会有灾难性后果。j 2 e e 部署 到可靠的操作环境中,他们支持长期的可用性。一些j 2 e e 部署在w i n d o w s 环境中,客户也可选择健壮性能更好的操作系统如s u ns o l a r i s 、i b mo s 3 9 0 。 最健壮的操作系统可达到9 9 9 9 9 的可用性或每年只需5 分钟停机时间。这 是实时性很强商业系统理想的选择 4 】。 2 1 3j 2 e e 的四层模型 j 2 e e 使用多层的分布式应用模型,应用逻辑按功能划分为组件,各个应 用组件根据他们所在的层分布在不同的机器上。事实上,s u n 设计j 2 e e 的初 衷正是为了解决两层模式( c l i e n t s e r v e r ) 的弊端,在传统模式中,客户端担当了 过多的角色而显得臃肿,在这种模式中,第一次部署的时候比较容易,但难 于升级或改进,可伸展性也不理想,而且经常基于某种专有的协议通常 是某种数据库协议。它使得重用业务逻辑和界面逻辑非常困难。现在j 2 e e 的 多层企业级应用模型将两层化模型中的不同层面切分成许多层。一个多层化 应用能够为不同的每种服务提供一个独立的层,如下图所示,以下是j 2 e e 典 型的四层结构: 6 武汉理工大学硕士学位论文 运行在客户端机器上的客户层组件。 运行在j 2 e e 服务器上的w e b 层组件。 运行在j 2 e e 服务器上的业务逻辑层组件。 运行在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 ) 层软件。 j 2 e e 应用程序组件: j 2 e e 应用程序是由组件构成的j 2 e e 组件是具有独立功能的软件单元, 它们通过相关的类和文件组装成j 2 e e 应用程序,并与其他组件交互。j 2 e e 说明书中定义了以下的j 2 e e 组件: 应用客户端程序和a p p l e t s 是客户层组件。 j a v as e r v l e t 和j a v a s e r v e rp a g e s ( j s p ) 是w e b 层组件。 e n t e r p r i s ej a v a b e a n s ( f j b ) 是业务层组件。 客户层组件: j 2 e e 应用程序可以是基于w e b 方式的,也可以是基于传统方式的。 w e b 层组件j 2 e ew e b 层组件可以是j s p 页面或s e r v l e t s 按照j 2 e e 规范, 7 武汉理工大学硕+ 学位论文 静态的h t m l 页面和a p p l e t s 不算是w e b 层组件。w e b 层可能包含某些 j a v a b e a n 对象来处理用户输入,并把输入发送给运行在业务层上的e n t e r p r i s e b e a n 来进行处理。 业务层组件: 业务层代码的逻辑用来满足银行,零售,金融等特殊商务领域的需要,由 运行在业务层上的e n t e r p r i s eb e a n 进行处理下图表明了一个e n t e r p r i s eb e a n 是如何从客户端程序接收数据,进行处理( 如果必要的话) ,并发送到e i s 层储 存的,这个过程也可以逆向进行。 有三种企业级的b e a n :会话( s e s s i o n ) b e a n s ,实体( e n t i t y ) b e a n s ,和消息驱动 ( m e s s a g e d r i v e n ) b e a n s 会话b e a n 表示与客户端程序的临时交互当客户端 程序执行完后,会话b e a n 和相关数据就会消失相反,实体b e a n 表示数据库 的表中一行永久的记录当客户端程序中止或服务器关闭时,就会有潜在的 服务保证实体b e a n 的数据得以保存消息驱动b e a n 结合了会话b e a n 和 j m s 的消息监听器的特性。允许一个业务层组件异步接收j m s 消尉2 7 1 。 企业信息系统层: 企业信息系统层处理企业信息系统软件包括企业基础建设系统例如企业 资源计划( e r p ) ,大型机事务处理,数据库系统,和其它的遗留信息系统例 如,j 2 e e 应用组件可能为了数据库连接需要访问企业信息系统。 2 1 4j 2 e e 的结构 这种基于组件,具有平台无关性的j 2 e e 结构使得j 2 e e 程序的编写十分 简单,因为业务逻辑被封装成可复用的组件,并且j 2 e e 服务器以容器的形 式为所有的组件类型提供后台服务因为你不用自己开发这种服务,所以你 可以集中精力解决手头的业务问题 容器和服务 容器设置定制了j 2 e e 服务器所提供得内在支持,包括安全,事务管理, j n d l ( j a v an a m i n ga n dd i r e c t o r yi n t e r f a c e ) - 寻,远程连接等服务,以下列出最 重要的几种服务: j 2 e e 安全体e e u r i t y ) 模型可以让你配置w e b 组件或e n t e r p r i s eb e a n ,这样 只有被授权的用户才能访问系统资源每一客户属于一个特别的角色,而每个 角色只允许激活特定的方法。你应在e n t e r p r i s eb e a n 的布置描述中声明角色和 8 武汉理工大学硕士学位论文 可被激活的方法。由于这种声明性的方法,你不必编写加强安全性的规则。 j 2 e e 事务管理( t r a n s a c t i o nm a n a g e m e n t ) 模型让你指定组成一个事务中 所有方法间的关系,这样一个事务中的所有方法被当成一个单一的单元当客 户端激活一个e n t e r p r i s eb e a n 中的方法,容器介入一管理事务。因有容器管理 事务,在e n t e r p r i s eb e a n 中不必对事务的边界进行编码。要求控制分布式事务 的代码会非常复杂。你只需在布置描述文件中声明e n t e r p r i s eb e a n 的事务属 性,而不用编写并调试复杂的代码。容器将读此文件并为你处理此e n t e r p r i s e b e a n 的事务1 1 2 】。 j n d i 寻址( j n d il o o k u p ) n 匣务向企业内的多重名字和目录服务提供了一 个统一的接口,这样应用程序组件可以访问名字和目录服务。 j 2 e e 远程连接( r e m o t ec l i e n tc o n n e c t i v i t y ) 模型管理客户端和e n t e r p r i s e b e a n 间的低层交互当一个e n t e r p r i s eb e a n 创建后,个客户端可以调用它的 方法就象它和客户端位于同一虚拟机上一样。 生存周期管理( l i f ec y c l em a n a g e m e n t ) 模型管理e n t e r p r i s eb e a n 的创建 和移除,一个e n t e r p r i s eb e a n 在其生存周期中将会历经几种状态。容器创建 e n t e r p r i s eb e a n ,并在可用实例池与活动状态中移动他,而最终将其从容器中 移除。即使可以调用e n t e r p r i s eb e a n 的c r e a t e 及r e m o v e 方法,容器也将会在 后台执行这些任务【1 5 】。 数据库连接池( d a t a b a s ec o n n e c t i o np o o l i n g ) 模型是一个有价值的资源。 获取数据库连接是一项耗时的工作,而且连接数非常有限。容器通过管理连 接池来缓和这些问题。 e n t e r p r i s eb e a n 可从池中迅速获取连接。在b e a n 释放连接之可为其他b e a n 使用。 容器类型 j 2 e e 应用组件可以安装部署到以下几种容器中去: e j b 容器管理所有j 2 e e 应用程序中企业级b e a n 的执行, e n t e r p r i s e b e a n 和它们的容器运行在j 2 e e 服务器上。 w e b 容器管理所有j 2 e e 应用程序中j s p 页面和s e r v l e t 组件的执行, w e b 组件和它们的容器运行在j 2 e e 服务器上。 应用程序客户端容器管理所有j 2 e e 应用程序中应用程序客户端组件的 执行,应用程序客户端和它们的容器运行在j 2 e e 服务器上。 9 武汉理工大学硕士学位论文 a p p l e t 容器是运行在客户端机器上的w e b 浏览器和j a v a 插件的结合。 2 1 5j 2 e e 的核心a p i 与组件 j 2 e e 平台由一整套服务( s e r v i c e s ) 、应用程序接口( a p t s ) 和协议构成, 它对开发基于w e b 的多层应用提供了功能支持,下面对j 2 e e 中的1 3 种技术 规范进行简单的描述( 限于篇幅,这里只能进行简单的描述) : j d b c ( j a v ad a t a b a s ec o n n e c t i v i t y ) : j d b ca p i 为访问不同的数据库提供了一种统一的途径,象o d b c 一样, j d b c 对开发者屏蔽了一些细节问题,另外,j d c b 对数据库的访问也具有平 台无关性。 j n d i ( j a v an a m ea n dd i r e c t o r yi n t e r f a c e ) : j n d ia p i 被用于执行名字和目录服务。它提供了一致的模型来存取和操 作企业级的资源如d n s 和l d a p ,本地文件系统,或应用服务器中的对象。 e j b ( e n t e r p r i s ej a v a b e a n ) : j 2 e e 技术之所以赢得广泛重视的原因之一就是e j b 。它们提供了一个框 架来开发和实旄分布式商务逻辑,由此很显著地简化了具有可伸缩性和高度 复杂的企业级应用的开发。e j b 规范定义了e j b 组件在何时如何与它们的容 器进行交互作用。容器负责提供公用的服务,例如目录服务、事务管理、安 全性、资源缓冲池以及容错性。但e b 并不是实现j 2 e e 的唯一途径。正是由 于j 2 e e 的开放性,使得有的厂商能够以一种和e j b 平行的方式来达到同样的 目的【”1 。 r m i ( r e m o t em e t h o di n v o k e ) : 正如其名字所表示的那样,r m i 协议调用远程对象上方法。它使用了序 列化方式在客户端和服务器端传递数据。r m i 是一种被e j b 使用的更底层的 协议。 j a v ai d i j c o r b a : 在j a v ai d l 的支持下,开发人员可以将j a v a 和c o r b a 集成在一起。他 们可以创建j a v a 对象并使之可在c o r b ao r b 中展开,或者他们还可以创建 j a v a 类并作为和其它o r b 一起展开的c o r b a 对象的客户。后一种方法提供 了另外一种途径,通过它j a v a 可以被用于将你的新的应用和旧的系统相集成 1 1 5 1 。 l o 武汉理工大学硕士学位论文 j s p ( j a v a s e r v e rp a g e s ) : j s p 页面由h t m l 代码和嵌入其中的j a v a 代码所组成。服务器在页面被 客户端所请求以后对这些j a v a 代码进行处理,然后将生成的h t m l 页面返回 给客户端的浏览器。 j a v as e r v l e t : s e r v l e t 是一种小型的j a v a 程序,它扩展了w e b 服务器的功能。作为一种 服务器端的应用,当被请求时开始执行,这和c g ip e f l 脚本很相似。s e r v l e t 提供的功能大多与j s p 类似,不过实现的方式不同。j s p 通常是大多数h t m l 代码中嵌入少量的j a v a 代码,而s e r v l e t s 全部由j a v a 写成并且生成h t m l 。 x m i ( e x t e n s i b l em a r k u pl a n g u a g e ) : x m l 是一种可以用来定义其它标记语言的语言。它被用来在不同的商务 过程中共享数据。 x m l 的发展和j a v a 是相互独立的,但是,它和j a v a 具有的相同目标正 是平台独立性。通过将j a v a 和x m l 的组合,您可以得到一个完美的具有平 台独立性的解决方案。j m s ( j a v am e s s a g es e r v i c e ) : m s 是用于和面向消息的中间件相互通信的应用程序接e i ( a p i )

温馨提示

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

评论

0/150

提交评论