(计算机应用技术专业论文)基于j2ee+frame+work的条码管理系统的设计与研究.pdf_第1页
(计算机应用技术专业论文)基于j2ee+frame+work的条码管理系统的设计与研究.pdf_第2页
(计算机应用技术专业论文)基于j2ee+frame+work的条码管理系统的设计与研究.pdf_第3页
(计算机应用技术专业论文)基于j2ee+frame+work的条码管理系统的设计与研究.pdf_第4页
(计算机应用技术专业论文)基于j2ee+frame+work的条码管理系统的设计与研究.pdf_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

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

文档简介

摘要 近年来,随着i n t e r n e t 技术和信息化建设的快速发展,开发基于w e b 的应用 系统的需求越来越复杂,开发周期越来越紧迫,同时对系统的稳定性、扩展性 和可维护性要求也越来越高。为了提高开发的进度,同时考虑到应用系统的灵 活性、安全性和实用性,就需要有设计优良的设计模式,一个设计优良的,可 复用的系统框架设计可作为解决这一迫切问题的方案。 本文在对多层框架核心技术进行详细分析后,将其应用到湖北省物品编码 管理信息系统开发过程中。通过对系统的需求分析描述,建立了系统的层次模 型,并将系统划分为三个层次。 s t r u t s 是一种基于m v c 设计模式的开发框架。在系统开发中应用s t r u t s ,实 现了表示层与业务逻辑层的分离,在对业务层进行修改的时候,不影响表示层 的实现,提高了系统的开发效率。 s p r i n g 是一个全面,模块化的框架,是层次化的体系结构,开发人员能够选 择使用s p r i n g 的任何部分。s p r i n g 框架有效的组织了系统中的对象,消除了组 件对象创建与使用耦合紧密的问题,同时消除了使用各种各样格式的属性定制 文件的需要,在整个系统应用中,可以通过统一的方法进行配置。 h i b e r n a t e 是一个面向j a v a 环境的对象关系数据库映射的工具,不仅管理 j a v a 类到数据库表的映射,还提供数据查询和获取数据的方法h i b e r n a t e 提供 的o r m 机制可以把一个对象映射到多个数据库表,实现多种对象关联关系的映 射,实现对象继承映射。h i b e r n a t e 提供的查询语言h q l 可提供o r m 的连接查 询和动态查询。 文中提出的s t r u t s + s p r i n g + h i b e r n a t e 框架实现j 2 e e 多层结构,采用开放 源代码框架技术,整个软件模型层次清晰,开发人员分工明确,项目管理简单。 开发周猡施,容易维护。系统特点是将当前先进设计思想,前沿技术与优秀开 发工具结合起来,得到开发灵活,低耦合及易于维护的w e b 信息系统的解决方 案。对其它基于j 2 e e 平台的w e b 应用系统也具有一定的借鉴作用,展示了运用 框架技术在开发和维护中的高效性,设计出一条基于架构开发企业级应用系统 的一般模式。 关键字:j 2 e e ,框架,条码 a b s t r a c t i nr e c e n ty e a r s ,a l o n gw i t ht h ed e v e l o p m e n to ft h ei n t e r n e tt e c h n i q u ea n d b u s i n e s se n t e r p r i s ei n f o r m a t i o n - b a s e dc o n s t r u c t i o n , c o n s t r u c t sb a s e do nt h ew e b a p p l i c a t i o ns y s t e md e m a n dm o r ea n dm o r ec o m p l e x ,t h ed e v e l o p m e n tc y c l ei sm o r e a n dm o r eu r g e n t , m e a n w h i l et ot h es y s t e ms t a b i l i t y , e x t e n d e da n dt h em a i n t a i n a b l e r e q u e s t i sa l s om o r ea n dm o r eh i g h i no r d e rt o i m p r o v et h ee f f i c i e n c y o f d e v e l o p m e n t , s i m u l t a n e o u s l yc o n s i d e rt h ea p p l i c a t i o ns y s t e m t h ef l e x i b i l i t y , t h e s e c u r i t ya n dt h eu s a b i l i t y , n e e d st oh a v eo n ek i n do fg o o dd e s i g np a t t e r n , ag o o d r e u s a b l ef r a m e w o r ko ft h es y s t e md e s i g na saf e a s i b l eo p t i o nt or e s o l v et h i su r g e n t p r o b l e m b a s e do nt h ef r a m e w o r ko fm u l t i - c o r et e c h n o l o g yf o rd e t a i l e da n a l y s i s , a p p l yt o h u b e ip r o v i n c eb a rc o d i n gm a n a g e m e n ti n f o r m a t i o ns y s t e md e v e l o p m e n tp r o c e s s , t h r o u g ht os y s t e md e m a n da n a l y s i sd e s c r i p t i o n , h a v ee s t a b l i s ht h es y s t e ml e v e lm o d e l , a n dd i v i d e st h es y s t e mi n t ot h ec o r r e s p o n d i n gt h r e el e v e l s s t r u t si sb a s e do nt h em v cd e s i g np a t t e r nd e v e l o p m e n tf x a m e w o r l ls y s t e m d e v e l o p m e n ti ns t r u t sa p p l i c a t i o n , h a sr e a l i z et h ee x p r e s s i o nt i e ra n dt h es e r v i c e l o g i ct i e rs e p a r a t i o n , w h e nm o d i f yt h ee x p r e s s i o nt i e r , c a nn o ta f f e c tt h ee x p r e s s i o n l e v e lt h er e a l i z a t i o ns i t u a t i o n , i m p r o v et h ee f f i c i e n c yo ft h ed e v e l o p m e n ts y s t e m s p r i n g i s c o m p r e h e n s i v e , t h em o d u l a rf r a m e ,s e p a r a t e ds y s t e m s t r u c t u r e d e v e l o p e r sc a nc h o o s ea n yp a r tw h i c hu s e si ts e p a r a t e d s p r i n gf l a m eo r g a n i z e dt h e o b j e c ti nt h es y s t e me f f e c t i v e l y , e l i m i n a t e dt h em o d u l eo b j e c tf o u n d a t i o na n du s e c o u p l i n gc l o s e dq u e s t i o n w h i l ee l i m i n a t i n g t h eu s eo fav a r i e t yo ff o r m a t s c u s t o m i z e dd o c u m e ma t t r i b u t e sn e e d e d t h r o u g h o u tt h ea p p l i c a t i o na n dp r o j e c t , m a y c a r r yo nt h ec o n f i g u r a t i o nt h r o u g ho n ec o n s i s t e n tm e t h o d h i b e r n a t et a k e sf a c et h ej a v ae n v i r o n m e n to b j e c t r e l a t i o n a ld a t a b a s em a p p i n g t o o l ,n o to n l ym a n a g e st h em a p p i n gd a t a b a s et a b l e sc a t e g o r y , a l s op r o v i d e st h ed a t a i n q u i r ya n dd a t aa c q u i s i t i o nm e t h o d s h i b e r n a t ep r o v i d e st h eo r m m e c h a n i s mm a y m a p t om o r et h a no n ed a t a b a s et a b l e ,a c h i e v eav a r i e t yo fe n t i t i e sa s s o c i a t e dm a p p i n g , a c h i e v ei n h e r i t a n c em a p p i n g h i b e r n a t ep r o v i d e si n q u i r yl a n g u a g eo fh q l , h a s r e a l i z e dt h em a n yc o n d i t i o nc o n n e c t i o n si n q u i r ya n dt h ed y n a m i ci n q u i r y t h i sp a p e rp r e s e n t st h es t r u t s + s p r i n g + h i b e r n a t ef r a m e w o r kt oa c h i e v ej 2 e e m u l t i - t i e rs t r u c t u r e ,u s eo fo p e ns o b r c ct e c h n o l o g yf r a m e w o r lt h ew h o l es o f t w a r e m o d e ll a y e ri sd e a r , s t r u c t u r er e a s o n a b l e ,d e v e l o pac l e a rd i v i s i o no fw o r ka n df o c u s , p r o j e c tm a n a g e m e n ts i m p l ea n ds h o r td e v e l o p m e n tc y c l e ,e a s ym a i n t e n a n c e t h e s y s t e mc h a r a c t e r i s t i ci st h ec u r r e n ta d v a n c e dd e s i g n , t h ef r o n tt e c h n o l o g ya n dt h e o u t s t a n d i n gd e v e l o p m e n tk i t ,g e td e v e l o p e df l e x i b l e , l o wc o u p l i n ga n de a s y m a i n t e n a n c eo fw e bi n f o r m a t i o ns y s t e m ss o l u t i o n s a p p l i c a t i o ns y s t e ma l s oh a st h e c e r g a i nm o d e lf u n c t i o nt og u i d eo t h e rb a s e do nj 2 e ew c bp l a t f o r m , d e m o n s t r a t et h e u s i n go ft h i sn e wt e c h n o l o g yi nt h ed e v e l o p m e n ta n dm a i n t e n a n c eo ft h ee n t e r p r i s e c o n v e n i e n ta n de f f i c i e n t f i n do u taf r a m e w o r kf o r t h e d e v e l o p m e n to f e n t e r p r i s e l e v e la p p l i c a t i o n so fag e n e r a lp a t t e m h i 独创性声明 本人声明,所呈交的论文是本人在导师指导下进行的研究工作及取得的研 究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其 他人已经发表或撰写过的研究成果,也不包含为获得武汉理工大学或其它教育 机构的学位或证书而使用过的材料与我一同工作的同志对本研究所做的任何 贡献均已在论文中作了明确的说明并表示了谢意。 关于论文使用授权的说明 7 f 塔 本人完全了解武汉理工大学有关保留、使用学位论文的规定,即学校有权 保留、送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部 或部分内容,可以采用影印、缩印或其他复制手段保存论文。 ( 保密的论文在解密后应遵守此规定) 签名:玉倒导师签名;丝 武汉理工大学硕士学位论文 1 1 课题研究的背景 第1 章绪论 进入2 0 世纪9 0 年代,随着网络应用和计算机技术的发展,i n t e m e t 相关方 面的应用,正在成为加速人类信息化步伐的强大助推器,以网络通讯技术为核 心的信息技术,正在引发社会各个领域的深层次变革。这就给我们带来了一个 新的技术课题,就是如何构造一个基于标准、以服务器为中心、可伸缩、可快 速部署、易用和易管理的基于w e b 的应用系统框架,并使它运行在一个可伸缩、 可用、安全的环境内。 j 2 e e 技术平刨1 j 是为开发分布式、多层的企业级应用定义了一套全新的模 型。j 2 e e 技术平台采用的是基于标准化,组件化,分布式的开发应用模型,而 且为这些定义的组件了提供了一套完整的服务集合,来简化开发易扩展、易伸 缩的企业级应用平台的复杂性。 随着o o ( o r i e n t e do b j e c t ,面向对象) 技术的飞速发展,大多数系统为开发人 员提供了与应用相关的面向对象框架来使用,使得应用程序的开发简单化。框 架是一种可重用的应用程序,开发人员可以在此基础对特定的应用程序进行开 发。框架是若干组件的集合,框架提供的组件为解决目标领域所面临的问题提 供了可方便重用的体系结构。利用可重用的体系结构,就可使问题的解决变得 快速、容易。 j 2 e e 模式【2 】是通过大量程序开发人员对j 2 e e 关键技术的最佳经验、设计策 略、解决方案的实践总结。在j 2 e e 平台应用的开发过程中,j 2 e e 模式涵盖了 j 2 e e 分布式模型所有层的若干需求,将j 2 e e 层次模型化,为程序开发人员提供 了基于各层开发的最佳实践。 面对信息化技术的到来,我国的政府部门,企业及各个行业领域也都在利 用成熟的网络技术建立现代化的网络体系应用,来建立一个开发周期短,方便 维护,易于扩展的,部署灵活的管理信息系统,这也是我国信息技术现代化的 必然之路。 武汉理工大学硕士学位论文 1 2 课题应用的背景 随着计算机应用在我国的迅速发展,各个行业工作的展开都离不开计算机 网络和计算机软件的使用。我国商品条形码的管理部门也不例外,以前条码管 理部门的计算机应用只仅限于使用单机系统,基于单机的数据库开发应用,业 务范围只用于条码信息的存储。但随着计算机应用的发展,计算机应用水平推 动了条码管理部门的不断提高,通过对计算机在条码管理软件中的应用,计算 机网络的布局由简单单机系统发展成为复杂计算机网络系统,计算机操作系统 的使用由单任务、单进程的d o s 发展为多任务、多线程的w i n d o w sn t , w i n d o w s2 0 0 0 ,u n i x ;数据库也由单机版的f o x p r o 逐步升级为s y b a s e , d b 2 ,o r a c a l 等大型数据库;编程语言也由c 逐步变为v m u a lc + + ,j a v a 等 高级程序设计语言。各种计算机技术的不断升级,为企业的各种应用提供了广 泛的前景。 随着软件应用范围不断的扩大,使得条码管理软件系统也变得日益庞大。 以单个省份为例,条码管理软件的使用人数一般有上千人。随着软件使用人数 的增加,各地条码管理部门都在硬件条件、网络设施上作了大量的投入,改换 配备小型机、扩充网络使用带宽、升级计算机硬件配置等。但相对于更换计算 机硬件设计,由于软件开发有较长的周期,当前条码管理部门所使用的软件结 构,较多使用的是c 幅结构。c s 软件结构具有开发方便、运行效率高的特点, 但同时需要系统配置有较高性能的客户端,而且客户端维护工作量大,存在服 务器负载过重的不足,这在大型的软件应用系统中,制约了c s 结构的进一步 发展。而目前逐渐流行的多层结构体系的开发方法,正是c s 问题的解决之道。 1 3 课题内容及意义 现代企业的发展离不开企业信息化的程度,在保证企业持续发展的情况下, 使用较少的开发时间和花费较少的企业资金,建立一个维护性方便和扩展性良 好的w e b 应用程序,将成为企业急需要解决的问题。采用良好的架构模式是实 现开发企业信息系统的突破点,架构是一个系统最大的可重用部件,开发人员 可在架构的基础之上,方便开发企业所需业务流程的应用系统。架构正是由于 上述优点,被引入到w e b 应用程序的开发过程中。虽然在应用系统开发的前期, 2 武汉理工大学硕士学位论文 会增加开发人员的开发难度,但随着应用系统开发进度,就会逐渐体现框架的 优势。开发人员可以通过一个或多个系统配置文件,把握应用的总体数据结构, 以图形化的形式查看系统组成结构。单个模型可以对应形式多样的逻辑视图, 同样一个模型可以对应多种客户视图,使得代码量大幅减少,有利于后期的系 统维护和扩展。 j 2 e e 架构具有良好的兼容性、开放性、跨平台性,已经成为b s 应用系统 的主要选择,在国内外高端企业级应用系统中,基本上采用的都是j 2 e e 架构。 目前国内还没有形成成熟的j 2 e e 应用开发平台,国外主要有s t r u t s ,i b a t i s , h i b e r n a t e 等应用平台,但是上述平台只涉及到j 2 e e 体系结构中的部分层次。 s t r u t s 实现了对视图层和控制层的管理,对模型层没有涉及,而h i b e r n a t e ,i b a t i s 只是实现了数据持久层的封装。另外,某些商用的企业应用开发平台需要额外 的费用,这些都将提高企业的开发风险和运营成本。 本系统开发的框架不仅是类库,而是可作为一个开发平台,通过此平台提 高企业的开发进度,提高系统的可维护性,降低企业投资风险,提供整合度, 有利于实现对不同项目提供通用的解决方案,开发的系统产品化程度高,易于 扩展的特点,同时降低了前期风险和后期测试量,适合企业级应用程序开发, 对于快速建立起一个健壮的应用系统具有十分重要的意义。 本课题的研究意义在于,研究了当前比较流行的w e b 应用程序的架构技术, 指出了利用j 2 e e 技术构建基于网络的、分布式的企业信息系统的设计方法和设 计模型。同时针对j 2 e e 在目前实际应用中出现的问题,提出了新的解决方案 框架组合实现了一般应用开发中的结构性设计问题,可以使开发人员复用系统 设计中通用的设计模块,集中精力实现特定功能的开发上。由于采用了分层的 设计思想和设计模式的概念,解决系统中各层之间的紧密耦合问题,提高整个 系统的性能和灵活性,开发的应用系统就比较容易理解、测试和维护,增强了 应用系统的可维护性和可扩展性,减少重复开发工作量、缩短开发时间、降低 开发成本、提高软件生产率。并对实现架构的框架实例的实现提出了一些自己 的见解。 3 武汉理工大学硕士学位论文 1 4 论文的研究内容和组织结构 本论文共分为六章: 第一章:介绍课题的研究背景,应用背景以及主要研究内容,阐明本文的 研究目的及主要工作内容。 第二章:介绍j 2 e e 体系结构的相关知识。 第三章:介绍w e b 应用框架的相关知识。 第四章:分析设计出系统的四层结构划分,介绍系统总体架构设计,然后 详细讨论系统模块的功能。 第五章:介绍基于框架开发的条码管理信息系统的各层框架设置、层次开 发流程、系统运行效果。 第六章:在对本论文主要工作进行总结的基础上,对下一步的工作提出了 展望。 4 武汉理工大学硕士学位论文 第2 章j 2 e e 分布式企业计算模型 企业级分布式应用系统的开发,长期以来面临着两方面的难题。一是企业 级多层应用系统处于一个异构的分布式环境之中,系统必须与己有系统进行通 信和与其它系统进行互操作;二是在为客户、合作伙伴和企业内部人员等多方 用户提供信息服务时,企业级多层应用系统必须为用户提供高可靠性、安全性 和伸缩性的服务当这些要求遇上复杂多变的用户需求和不断变化的交付时间 时,使得企业级多层应用系统的开发风险越来越大。开发商和程序开发人员一 直在努力推动和殷切期待一个成熟的,标准的企业级应用平台,以简化和规范 企业级应用系统的开发和部署。j a v a 技术的出现,尤其是j 2 e e ( j a v a2p l a t f o r m e n t e r p r i s ee d i t i o n ) 平厶的推出正是这种努力的结果,也使得企业级应用系统的开 发由此变得更加快速和方便。需要指出的是,j 2 e e 本身是一套标准,它为不同 厂商创建的平台产品提供了统一的标准,使得不同厂商的j 2 e e 平台产品之间的 交互成为可能。 为了推动基于j a v a 语言服务器端应用系统的开发,s u n 公司开发了一项称 为j 2 e e 的技术,目的是将j a v a 平台的范围扩展到大规模异构分布式计算环境 中。1 9 9 9 年底,s u n 推出了j a v a2 技术及相关的j 2 e e 规范,目标是提供可移 植的、与平台无关的、支持安全并发访问的、完全基于j a v a 的服务器端中间件 的开发标准。 在j 2 e e 标准中,s u n 给出了一套完全基于j a v a 语言的,面向企业级应用的 分布式规范。其中,在分布式交互操作协议上,j 2 e e 同时支持r m i 和i i o p 协 议,在服务器端具体包括s e r v l e t ,j s p ,f j b 等多种形式,以支持不同的业务逻 辑需求。j 2 e e 是一套标准,而不是某个具体的软件产品,不同的软件厂商可以 实现自己的符合j 2 e e 规范的产品,而且j a v a 应用程序具有一次编写,随处运行 的特性,使得j 2 e e 技术在分布式计算领域得到了快速发展。 5 武汉理工大学硕士学位论文 图2 - 1j 2 e e 的体系结构 j 2 e e 技术和微软的n e t 技术相比【3 】,其优势主要体现在跨平台和可移植性 方面。j 2 e e 技术是以j a v a 语言为基础的,因此j 2 e e 具有较好的跨平台和可移 植性,可以在所有实现j v m ( j a v av h l u a lm a c h i n e ) 的平台上运行。同时,j 2 e e 的 所有标准都是公开的,许多软件厂商和组织都提供了实现j 2 e e 标准的产品和开 发工具。而n e t 则只能在w m d o w s 平台上执行,虽然理论上支持多种开发语言 的运行,但其核心技术被微软所垄断。j 2 e e 规范指出,j 2 e e 是一个开发企业级 分布式应用的平台,j 2 e e 产品提供了可使e j b ,s e r v l e t 和j s p 技术完全实现的 应用程序服务器。另外,j 2 e e 还描述了这些技术是如何相互协作,以提供一套 完整的企业级应用系统开发方案。图2 1 表示的是j 2 e e 的体系结构,从图中我 们可以看出j 2 e e 体系中各个组成部分之间的逻辑关系。首先整个j 2 e e 体系是 构建在j 2 s e ( j a v a2p l a t f o r ms t a n d a r de d i t i o n ) 的基础之上的【5 1 ,这表明j 2 e e 的实现技术依靠的是j 2 s e 所提供的标准a p i 和运行时环境,这一点也保证了 j 2 e e 技术具有跨平台可移植性和良好的兼容性。其次,图中彼此独立的模块代 表了j 2 e e 体系中的各种类型的容器。所谓容器,就是指为组件提供各种必要的 底层服务支持的一个运行时环境。这些底层服务包括了支持数据库访问、消息 服务、邮件服务、事务管理、安全性、远程访问支持等各个方面。运行于容器 6 武汉理工大学硕士学位论文 中的组件,如a p p l e t ,s e r v l e t ,j s p 和e i b 等,依靠容器提供的这些底层服务来 完成具体的业务逻辑。图中的连线部分表示的是各部分之问的相互访问关系。 可以看出,在j 2 e e 体系结构为开发人员,提供了多种灵活的组件访问方式和数 据访问方式。从组件间的访问关系来看,客户端既可以通过标准的h t r p 协议 访问w e b 容器组件进而访问f j b 组件,也可以通过远程调用的方式直接访问f i b 组件。从组件和数据的访问关系来看,客户端组件,w e b 容器组件和e j b 组件 都具备了通过标准的j d b c a p i 访问数据库的能力。 2 1 j 2 e e 组成 j 2 e e 架构1 7 1 是一个标准,而不是某个具体的产品,它由以下几个部分组成: j 2 e e 规范,该规范详细说明j 2 e e 平台的体系结构组成、平台角色功能及 j 2 e e 中各种服务和核心应用程序接口的实现要求。它是j 2 e e 应用服务器开发商 所应遵循的标准。 j 2 e e 兼容性测试站点,s u n 公司为开发j 2 e e 应用服务器,是否符合j 2 e e 规范提供了一个测试站点,对通过j 2 e e 兼容性测试站点测试的厂商产品,s u n 公司将发放j 2 e e 产品兼容性证书。 j 2 e e 实施指南,该文档通过实例来指导开发人员如何去开发一个基于j 2 e e 的企业级多层应用系统。 j 2 e e 参考实现,即j 2 e e 软件开发工具包,它既是s u n 公司对j 2 e e 规范的 一个标准实现,又是为其他软件厂商和程序开发人员开发基于j 2 e e 企业级应用 系统提供的一个开源的底层开发环境。 j 2 e e 为搭建具有灵活性高、伸缩性强、维护性方便的企业级应用系统,提 供了良好的机制: 1 开发原有的系统:由于企业的发展必须适应新的商业需求,必须充分利用现有 的企业信息系统,而不是重新制定一个全新的实施方案。所以,就需要在己有 系统之上的服务器端平台机制下,建立一个符合现阶段公司发展所需要的企业 级应用系统。j 2 e e 架构可以充分利用原有企业的应用系统,j 2 e e 拥有广泛的业 界支持和一些重要的企业计算领域供应商的参与使这一可能成为现实。每一个 产品厂商都对现有的客户提供了使用原有系统,进行可移植的,符合j 2 e e 规范 的升级途径。由于在j 2 e e 平台开发的产品,几乎可以在任何操作系统和硬件配 7 武汉理工大学硕士学位论文 置上运行,所以企业现有的操作系统和硬件也能被保留使用,减少企业投资风 险。 2 高效的开发进度:j 2 e e 规范允许企业把一些通用的、复杂的服务端业务逻辑 交给软件中间件供应商去实现。这样允许程序开发人员可以集中精力实现创建 企业特有的业务逻辑上,就可以缩短了应用系统的开发时间。高级中间件软件 供应商提供以下复杂的中间件服务: ( 1 ) 状态管理服务:让系统开发人员减少代码量,不用关心如何管理系统状态, 这样能够更快地完成程序开发。 ( 2 ) 持续性服务:将数据库访问逻辑代码隔离出来,让系统开发人员能编写出 更抽象,与数据库访问无关的应用程序,使得这种系统应用程序的开发与维护 变得更加简洁和方便。 ( 3 ) 分布式共享数据对象缓存服务:让系统开发人员开发高性能的系统,减少 对系统性能的关注点,极大提高系统整体部署的可伸缩性。 ( 4 ) 支持异构环境:j 2 e e 应用可以开发部署在不同的异构环境中。实现j 2 e e 框架的应用程序可不依赖特定的操作系统和硬件平台。因此设计一个基于j 2 e e 框架的系统,只需开发一次就可部署到各种平台上,这在典型的异构企业级计 算环境中是十分重要的。符合j 2 e e 标准的应用系统也允许企业订购与j 2 e e 标 准兼容的第三方组件,将它们部署到现有系统中,可加快系统开发进度。 ( 5 ) 可伸缩性:基于j 2 e e 平台的应用程序,允许多台服务器集成部署。j 2 e e 领域的供应商提供了广泛的负载平衡策略,消除系统中的瓶颈,使得企业系统 在j 2 e e 平台上实现极佳的可伸缩性,来满足未来商业应用的需要。 ( 6 ) 稳定的可用性:j 2 e e 平台能够全天候运转以支持公司客户、合作伙伴的 需要,即使在夜间按计划停机也可能造成严重损失,若是意外停机,那会有灾 难性后果。将j 2 e e 部署到可靠的操作环境中,这是实时性很强商业系统的理想 选择。 2 2j 2 e e 体系结构 j 2 e e 体系结构分为四个层次i s : 客户层( c l i e n tt i e r ) 的作用是用来与客户端用户交互的,把来自应用系统的数 据信息传递给用户。一种是基于w e b 的j 2 e e 应用瘦客户端,利用浏览器将w e b 8 武汉理工大学硕士学位论文 网页和a p p l e t 下载到客户机器上运行。另一种是独立于客户程序的胖客户端, 程序不运行在网页中,而运行在基于a p p l e t 的小程序中。 w e b 服务层( w e b t i e 0 是视图逻辑层,用于处理用户的请求接收和应答。j 2 e e 规范包括的w e b 组件,可以由j s p 页面、基于w e b 的a p p l e t ,输出h t m l 页面 的s e r v l e t 组成。调用s e r v l e t 或者j s p 页面的h t m l 页面在应用程序组装时与 w e b 组件打包在一起。 业务层( b u s s i n e s st i e r ) 是完成事务业务逻辑的中间环节,负责业务逻辑实现 和控制数据库操作,负责系统的业务逻辑实现以及提供各类应用服务 企业信息系统层( 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 e r ) 是处理完成企业信息的 系统软件,包括企业基础设施系统,企业资源计划e r p ( e n t e r p r i s er e s o u r c e p l a m 血g ) 、大型机事务处理( m a i n f r a m et r a n s a c t i o np r o c e s s i n g ) 和其他传统数据库 系统这样的数据存储系统。 客户层w e b 组件层 业务逻辑层企业信息 系统层 浏览器 厂、 一一、 w e b 容器 e j b 容器 、竺 _ _ - ,一、 、c 一、 m 讥 7 j 2 e e 、 卜叫 卜0 龟 + 数 ,、 厂、 s e r v e r l e t 据 应用客户端 、一一 库 容器 厂 、 录 _ j 2 e 平台 、客户端 、一 、l 图2 - 2 j 2 e e 的层次结构 虽然j 2 e e 为每层应用程序提供了不同的功能,但两层或多层可以在物理上 驻留于同一个j a v a 虚拟机上,也可以使位于同一层的不同组件被部署到不同的 j a v a 虚拟机上,在这种情况下,系统可以在统一的调用机制协调下,共同向外 9 武汉理工大学硕士学位论文 界提供服务。因为j 2 e e 多层体系结构以完成的逻辑功能为中心的,因此,j 2 e e 应用程序只访问为j 2 e e 应用程序提供所需功能的那一层。区分j 2 e ea p i 与特 定层的对应关系也值得关注。一些特定的a p i 总是与特定的层次相关联的,即 a p l 只用于这一层,而另一些a p i 可以用在不止一个层次上。 在图2 - 2 中,客户层主要包含与客户端交互的w e b 层程序,为j 2 e e 应用程 序提供了i n t e m e t 功能,并充当接受客户端和服务器端的媒介。在w e b 层上运行 的组件使用h t l 3 协议接收客户端请求,并将对请求的响应发送给客户端。e j b 层包含j 2 e e 应用程序的业务逻辑。一个或者多个的e j b 组件驻留在这一层,每 个e j b 组件包含被客户端间接访问的业务逻辑代码。e i s 层将j 2 e e 应用程序连 接到企业内部网资源和遗留系统上,e i s 层是j 2 e e 应用程序与各种其他技术的 直接或间接的接口。 各个层次间之间的访问,是根据访问控制列表( a c c e s sc o n t r o ll i s t ,a c l ) 的 控制来进行的。a c l 是j 2 e e 多层架构里一个关键的因素,a c l 的作用是为处 于不同虚拟局域网或者不同j a v a 虚拟机上的各层之间,起连接交互作用的。同 时,a c l 还通过一些安全机制,增加对系统d b m s ,数据信息资源的访问连接, 合w e b 应用程序的安全级别。 2 3j 2 e e 标准服务 j 2 e e 规范中制定了一套完善的企业级应用组件技术框架,框架建立了一套 基于企业级系统应用的基本构造模块组件。它涵盖了从简单的w e b 应用一直到 复杂的分布式企业级应用的业务范围。j 2 e e 包含的技术众多,根据其应用可以 进行下列分类凹: 组件技术:用于实现应用程序中的业务逻辑部分。组件包括j s p 网页、s e r v l e t 和e j b 三种类型。 服务技术:为应用程序组件提供了有效的支持服务。 通信技术:为开发应用程序的程序开发人员提供透明性保持,实现了应用 程序不同组件间的通信机制,组件可以是本地的,也可以是远程的。 2 3 1 组件技术 ( 1 ) j s p 武汉理工大学硕士学位论文 j s p ( j a v as e r v e rp a g e s ) 是j 2 e e 组件技术中的w e b 组件,它是由s e r v l e t 技术 发展而来的。在实际应用中,j s p 文件最终编译成s e r v l e t 。j s p 中包含的不是纯 j a v a 代码,而是可以将j a v a 代码嵌入到h t m l 或者x m l 中,为客户端的用户 提供显示功能,s e r v l e t 技术也可以为用户提供显示功能,但它包含的是纯j a v a 代码。j s p 技术可调用标记符,这些标记符可以是j a v a b e a n 组件和标签库,其 目的是为了保持j s p 核心业务逻辑功能的简洁性和隐蔽性。j a v a b e a n 组件和j a v a 标签库,为前台页面开发人员和后台逻辑开发人员的各自开发,提供了方便, 能够减少j s p 页面中的j a v a 代码量,减少维护j s p 页面的工作量,从而使修改 j s p 前台页面和j s p 后台逻辑相互隔离。 ( 2 ) s e r v l e t s e r v l e t 技术可为w e b 服务器提供额外功能。s e r v l e t 从客户端获得用户请求, 利用h t f p 请求和响应机制,为客户端用户提供服务器响应结果。s e r v l e t 适合 于处理简单的请求,响应服务。 ( 3 ) e j b e i b ( e n t e r p r i s ej a v ab e a n s ) 是j 2 e e 平台的核心,是服务器端的开发技术,开 发f _ j b 可将业务逻辑与底层的系统逻辑分开,使开发者只关心业务逻辑实现, 而由e j b 容器实现事务处理、目录服务、安全性、持久性等底层系统逻辑。 e j b 定义了三种e n t e r p r i s ej a v ab e a n s :会话b e a n ( s e s s i o nb e a n ) 、实体b e a n ( e n t i t yb e a n ) 和消息驱动b e a n ( m e s s a g ed r i v e nb e a n ) 。 会话b e a n 包括无状态和有状态两种。无状态会话b e a n 实现业务逻辑。有 状态会话b e a n 通常实现会话,在一次会话期间,会保存客户的数据信息。两种 会话b e a n 都不保存用户的状态数据信息,当客户与服务器会话结束或服务器关 闭时,会话b e a n 也会消亡。 实体b e a n 代表业务数据,可以是系统状态信息或者数据库中数据信息。实 体b e a n 在客户与服务器会话结束或者服务器关闭后,可保证数据被持久化。实 体b e a n 可分为b e a n 管理持久化的实体b e a n ( b e a nm a n a g e rp e r s i s t e n c e ,b m p ) 和容器管理持久化的实体b e a n ( c o n t a i n e rm a n a g e rp e r s i s t e n c e ,c m p ) ,两者的区 别主要在于前者是由开发人员提供数据访问逻辑,后者不需要开发者提供任何 持化业务逻辑,由e j b 容器来处理数据的持久性。 消息驱动b e a n 类似于会话b e a n 。二者之间的不同在于向b e a n 发送消息时, 使用消息驱动b e a n 。 武汉理工大学硕士学位论文 e j b 组件主要由三个部分组成: h o m e 接口:h o m e 接口定义e j b 对象的查找、定位和清除方法。当e j b 组 件部署到容器时,容器会生成对应的h o m e 对象,利用该对象负责查找、定位和 清除f _ j b 对象,返回e i b 对象的引用给客户端,用户利用该引用调用e j b 组件 的方法,最后,h o m e 对象清除e j b 对象。 r e m o t e 接口:r e m o t e 接口定义的是可供用户调用的方法。在f _ j b 组件部署 到容器的时候,容器会生成r e m o t e 接口相应的实现,来完成用户的调用请求。 b e a n 类:定义了业务逻辑的具体实现方法。但是供用户调用的方法由r e m o t e 接口定义。 在部署e j b 组件时,还需要e j b 部署描述文件,部署描述文件是x m l 格 式的文件部署描述文件由e j b 描述文件和e j b 部署文件组成,前者用来描述 e j b 自身的一些特征,后者是和具体服务器部署相关的描述。 e j b 容器为f _ j b 的部署、发布和生命周期提供管理服务,还提供事务处理、 目录服务、持久性管理和安全服务等其他的服务 2 3 2 服务技术 服务是组件和容器之间的一系列应用程序接口和协议。j 2 e e 架构定义了一 组标准的服务,其中有些服务是由j 2 s e 提供的,有些则是j 2 e e 对j a v a 的扩展。 ( 1 ) j a v a 数据库连接( j d b c ) j d b c 是访问关系数据库的a p i ,使用j d b c 可以利用统一的a ll 访问任何 关系型数据库。通过加载不同的数据库驱动程序和统一的j d b c a p i 就可以完成 不同数据库的访问。 ( 2 ) j a v a 命名目录服务( j n d o j n d i 是为简化开发网络程序中对目录设施的访问而提供的。目录是一种特 殊的数据库,提供了对其数据存储的快速访问。j n d i 为访问任何类型的目录提 供了一个标准的a p i 。j n d i 还提供了在网络上检索和存储j a v a 对象的能力。 ( 3 ) j a v a 事务处理a p i ( j t a ) 和事务处理服务( j t s ) j t a ( j a v at r a n s a c t i o na r c h i t e c t u r e ) 为提高应用系统事务处理的可靠性,提供 了一组标准的接口。j t s ( j a v a t r a n s a c t i o n s e r v i c e ) 是c o r b a o t s ( c o m m o n o b j c c t r e q u e s tb r o k e ro b j e c tt r a n s a c t i o ns e r v i c e ) 事务监控的j a v a 实现。j t s 规定了事务 管理器的实现方式,y

温馨提示

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

评论

0/150

提交评论