(计算机应用技术专业论文)ejb在信息系统中的应用.pdf_第1页
(计算机应用技术专业论文)ejb在信息系统中的应用.pdf_第2页
(计算机应用技术专业论文)ejb在信息系统中的应用.pdf_第3页
(计算机应用技术专业论文)ejb在信息系统中的应用.pdf_第4页
(计算机应用技术专业论文)ejb在信息系统中的应用.pdf_第5页
已阅读5页,还剩51页未读 继续免费阅读

(计算机应用技术专业论文)ejb在信息系统中的应用.pdf.pdf 免费下载

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

文档简介

摘要 i n t e r n e t 和w e b 技术的发展,促使许多应用从c s 迁移到b s 模式,b s 模式完整 体现了三层体系结构,即客户端( 浏览器充当) 一中间件服务器一数据库,发展过程中 曾出现了许多种技术,如c o r b a ,n e t 平台,j 2 e 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 的核心是一组规范和指南,定义了一个使用3 a v a 语言 开发多层分布式企业应用系统的标准平台。开发人员在这些规范和指南的基础上开发企 业级应用,同时由j 2 e e 供应商确保不同的j 2 e e 平台之间的兼容性。由于基于规范的 各j 2 e e 平台之间具有良好的兼容性,因此j 2 e e 应用系统可以部署在不同的应用服务 器上,无需或只需进行少量的代码修改。 e j b ( e n t e r d r i s ej a v a b e a n s ) 是使用j a v a 开发分布式应用程序的一个业界新的 标准。它提供服务器端的组件模式来开发企业分布式应用程序。它是具有扩展性的高效 组件。e j b 是j a v a 服务器组件新型技术,支持面向对象的多层分布式应用。传统的中间 件都需要我们编写代码来调用中间件a p i ,才可以使用这个中间件,而现在e j b 技术可 以使你无需对中间件a p i 进行编码就可以在企业级应用系统中使用中间件。e j b 的可重 用具有很大的诱惑性。e j b 是一个关于用j a v a 语言丌发的可部署的服务器端组件的组建 体系结构,它可以应用于任何应用服务器中。采取使用r e s i n 作为服务器,是因为r e s i n 提供了最快的j s p s e r v l e t s 运行平台。在j a v a 和j a v a s c r i p t 的支持下,r e s i n 可以为 任务灵活选用合适的开发语言。本文将要介绍r e s i n 服务器和e j b 的优势与特点,通过 具体应用详细论述e j b 。 关键字:j 2 e eb s 模式e j ba p i 组件体系结构 r e s i n j s p a b s t r a c t w i t ht h ed e v e l o p m e n to fi n t e r a c ta n dt h ew e bt e c h n o l o g y ,al o to fa p p l i c a t i o n sa r e i m p e l e df r o mc st ob sm o d e ,b sm o d ei n t a c t l yr e f l e c t st h r e es t r u c t u r es y s t e m ,n a m e l y c u s t o m e re n d ( b r o w s e rm a k e ) ,- t h em i d d l e w a r es e r v e r - d a t a b a s e ,al o to fk i n d so ft e c h n o l o g y p r e s e n ti ne v o l u t i o n ,s u c h a sc o r b a ,n e tp l a t f o r m ,j 2 e ep l a t f o r m ,e t c 。w h a tj 2 e e p l a t f o r mi su s e di st h em o s te x t e n s i v ei nt h e s et e c h n o l o g y t ob es i m p l e j 2 e ei sas t a n d a r d m i d d l e w a r es y s t e ms t r u c t u r e ,w h i c hi st o s i m p l i 母i n ga n ds t a n d a r d i z i n gt h ed e v e l o p m e n ta n d a r r a n g e m e n t o ft h em u l t i - l a y e r d i s t r i b u t e d e n t e r p r i s e sa p p l i c a t i o ns y s t e m t h e i m p l e m e n t a t i o no fj 2 e es c h e m ec a ni m p r o v es y s t e m a t i cp o r t a b i l i t y ,s e c u r i t y ,e l a s t i c i t y , l o a db a l a n c e da n dr e u s a b l er e m a r k a b l e b e f o r ej 2 e et e c h n o l o g ya p p e a r s ,i ti sb u r s tt h a t s e v e r a lm a i nd e v e l o p e r sp r o d u c t so ft h em i d d l ea r ee a c h ,l a c k i n gc o m p a t i b i l i t ye a c ho t h e r , t h ep o r t a b i l i t yi sb a d ,d i f f i c u l tt or e a l i z et h a to p e r a t ee a c ho t h e r , s e c t o rs t a n d a r d sg e n e r a l l y a p p r o v e do fn o n eo fq u i l t s n l ea p p e a r a n c eo fj 2 e ei n d i c a t e st h em i d d l e w a r et e c h n o l o g y m o v et om a t u r i t yp r o g r e s s i v e l ya f t e rs e a r c h i n ga n ds u m m a r i z i n gt h ee x p e r i e n c ei ng ot h r o u g h f o rm a n yy e a r s t h cc o r eo fj 2 e ei sag r o u po fr u l ea n dg u i d e j 2 e ed e f i n e sas t a n d a r d p l a t f o r mo fm u l t i l a y e rd i s t r i b u t e de n t e r p r i s eo fa p p l i c a t i o ns y s t e md e v e l o p p e db yj a v a l a n g u a g e d e v e l o p e r sd e v e l o pe n t e r p r i s el a y e ra p p l i c a t i o no nt h eb a s i so ft h e s en o r m sa n d g u i d e s ,j 2 e es u p p l i e rg u a r a n t e e st h ec o m p a t i b i l i t yo fd i f f e r e n tj 2 e ep l a t f o r m sa tt h es a m e t i m e b a s e do nn o r n le v e r yj 2 e ep l a t f o r mh a v eg o o dc o m p a t i b i l i t y ,s oj 2 e eu s i n gs y s t e m m a y b ed i s p o s e da td i f f e r e n ta p p l i c a t i o ns e r v e r s ,d on o tn e e do ro n l yn e e dt or e v i s eas m a l l a m o u n to f c o d e e j bi san e wc r i t e r i o nw h i c hd e v e l o pd i s t r i b u t e da p p l i c a t i o n sw i t hj a v a i tp r o v i d e s s e r v e r - s i d ec o m p o n e n t sm o d u l ew h i c hd e v e l o pd i s t r i b u t e da p p l i c a t i o n so fe n t e r p r i s e i ti sa p o w e r f u lc o m p o n e n t e j bi san e wt e c h n o l o g yo fj a v as e r v e r s i d ec o m p o n e n t ,i ts u p p o r t s o b j e c t - o r i e n tm u l t i p l i e d d i s t r i b u t e dc o m p o n e n ta p p l i c a t i o n s w h e nw eu s et r a d i t i o n a l m i d d l e w a r e ,w eh a v et oe d i tc o d e st oc a l l i n ga p l ,b u tn o wt h et e c h n o l o g ye j bm a k ey o u s u r et h a ty o uc 趾u s em i d d l e w a r ei ne n t e r p r i s ea p p l i c a t i o ns y s t e mw i t h o u te d i t i n gc o d et o a p i t h er e u s a b l eo fe j bh a st e m p t a t i o n e j bi sac o m p o n e n ta r c h i t e c t u r ef o rd e p l o y e d s e r v e r s i d ec o m p o n e n t si nj a v a ,i tc a nu s ei ne v e r ya p p l i c a t i o ns e r v e r r e s i nc a np r o v i d et h e m o s tf a s tr u n n i n gp l a to f j s p s e r v l e t s ,w h e nw em a k er e s i na ss e r v e r r e s i nm a yd e x t e r i t l y s e l e c ta d e q u a t ed e v e l o p i n gl a n g u a g ef o rm i s s i o ni nt h es u p p o r to f j a v aa n dj a v a s c r i p tt l l i s p a p e ri n t r o d u c e sr e s i n s e r v e ra n dt h ec h a r a c t e ra n da d v a n t a g ea n dt a l k 曲o u te j bt h r o u g h e x a m p l i c a t i o n k e y w o r d s :e j b m i d d l e w a r e a p i c o m p o n e n ta r c h i t e c t u r e r e s i nj s p i i 主要符号表 e j b : e n t e r p r i s ej a v a b e a n s j 2 e e : 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 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 j 2 m e :j a v a2p l a t f o r mm i e r oe d i t i o n 删c : j a v ad a t a b a s ec o n n e c t i v i t y j m s :j a v am e s s a g es e r v i c e j c a :j a v ac o n b e e t o ta r e h i t e c t u r e e a i : e n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o n j 】蜘d i :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 s p :j a v a s e r v e rp a g e s j t a :j a v at r a n s a c t i o na p i j m x :j a v am a n a g e m e n te x t e n s i o n s j a a s :j a v aa u t h e n t i c a t i o na n da u t h o r i z a t i o ns e r v i c e j a c c :j a v aa u t h o r i z a t i o ns e r v i c ep r o v i d e r c o n t r a c tf o rc o n t a i n e r s j a x r : j a v aa p if o rx m l r e g i s t r i e s s a a j :s o a pw i t ha t t a c h e n m t sa p if o rj a v a v 武汉理i 。人学硕十。半1 市论文 第1 章引言 随着p c 机的诞生与应用,计算模式从集中式( 数据和应用程序在一台主机上) 转 向了分布式( 数据和应用程序跨越多个节点机) ,尤为典型的是c s 结构 ( c 1 i e n t s e r v e r 的简称,客户机服务器模式) 。两层结构c s 模式,在上个世纪八十 年代及九十年代初得到了大量应用,最直接的原因是可视化开发工具的推广。之后,它 开始向三层结构发展。近来,随着网络技术不断发展,尤其是基于w e b 的信息发布和 检索技术、7 a v a 计算技术以及网络分布式对象技术的飞速发展,导致了很多应用系统 的体系结构从c s 结构向更加灵活的多缀分布结构演变,使得软件系统的网络体系结 构跨入一个新阶段,即b s 体系结构( b r o w s e r s e r v e r 的简称,浏览器服务器模 式) 。基于w e b 的g s 方式其实也是一种客户机服务器方式,只不过它的客户端是浏 览器。b s 模式是指在t c p i p 的支持下,以h t t p 为传输协议,客户端通过b r o w s e r 访 问w e b 服务器以及与之相连的后台数据库的技术及体系结构。它由浏览器、w e b 服务 器、应用服务器和数据库服务器组成( 图- 1 ) 。 图一1b s 模式工作原理 b s 模式突破了传统的文件共享及c s 模式的限制,实现了更大程度的信息共 享,任何用户只要通过浏览器即可访问数据库,从而克服了时间和空间的限制。b i s 模 式完整体现了三层体系结构,所谓三层体系结构,是在客户端与数据库之间加入了一 个“中间层”,也州组件层。1 3 s 模式层次结构如( 图一2 ) 所示。处于第一层的是客户 端,处于第二层的是应用服务层,由一台或多台服务器组成,该层具有良好的可扩充 性,可以随着应用的需要增加服务器的数目。处于第三层的是数据层,由数据库系统 和遗留系统组成。 武汉理1 :大学硕十学位论文 在发展过程中出现了许多种技术,如c o r b a ,n e t 平台,j 2 e e 平台等。在这些技 术中j 2 e e 平台应用的最为广泛。j 2 e e 平台技术为企业应用的设计、开发、集成以及部 署提供了一条基于组件的实现途径。j 2 e e 平台提供了一个多层次分布是应用设计模 式,重用组件的能力,统一的安全模式,灵活的交易控制。我们不仅可以把全新的客 户解决方案,用比以往都快的速度推向市场,而且平台独立、基于j 2 e e 组件的解决方 案将使你的产品不绑定在任何一个厂商的产品和a p i 上。 以前许多软件公司都推出了自己的服务器,每个服务器都以一种非标准化的方式 提供组件服务,所以一个应用软件在一个服务器上运行,你的代码必须受这个服务器 厂商的a p i 限制,当应用到不同的服务器上时,就不得不修改你的编码来满足这个服 务器的a p i ,这对于程序员和软件公司来说都是很麻烦的事。基于此s u n 公司提出了 e j b ,这个服务器端的组件体系结构,它位于机器a p i 之上,可以对任何应用软件的编 码进行编译,可以编译成它所应用的服务器的a p i ,从而得以使应用软件应用到任何服 务器上,将企业应用系统开发人员从应用系统级的编程工作中解脱出来,使之可以集 中精力进行应用系统中商务规则的系统分析和代码编写工作,也使得应用软件得到广 泛的推广。所以,越来越多的程序设计人员希望借助服务器端技术的快捷、安全以及 可靠性,为他们的企业开发分布式的交易应用系统。 目前市场上有许多基于j 2 e e 开发的产品,例如:w e b l o g i c ,w e b s p h e r e 和 j b o s s 。那么在众多产品中,我们之所以选择r e s i n 是因为它十分出色,表现更成 熟,很具备商业软件的要求,提供了最快的j s p s e r v l e t s 运行平台。 2 武汉理j ,人学硕十学传论文 第二章j a v a 概述 2 1j a v a 的历史 1 9 9 1 年,s u nm i c r o s y s t e m 公司的j a a eg o s l jn g 、b i l lj o e 等人,为在电视、控 制烤面包箱等家用消费类电子产品上进行交互式操作而开发了一个名为o a k 的软件 1 9 9 4 年下半年,i n t e r n e t 的迅猛发展,环球信息网州w 的快速增长,促进了j a v a 语言研制的进展,使得它逐渐成为i n t e r n e t 上受欢迎的开发与编程语言, m i c r o s o f t 和i b m 两大公司都计划在i n t e r n e t 上销售用j a v a 编写的软件。工业 界不少人预言:”j a v a 语言的出现,将会引起一场软件革命”。 s u n 公司从发布j a v a 到现在,经历了1 4 个版本,一下为其发布的版本的详细信 息。 已发行的版本: 版本号名称 中文名发布日期 j d k1 1 4 s p a r k l e r 宝石1 9 9 7 - 0 9 12 j d k1 1 5p u m p k i n南瓜1 9 9 7 1 2 1 3 j d ki 1 6 a b i g a i l阿比盖尔一女子名 1 9 9 8 一0 4 2 4 j d k1 1 7 b r u t u s 布鲁图一古罗马政治家和将军 1 9 9 8 - 0 9 2 8 j d k1 1 8 c h e l s e a 切尔西城市名 19 9 9 - 0 4 一0 8 j 2 s e1 2 p l a y g r o u n d运动场 1 9 9 8 1 2 0 4 j 2 s e1 2 1 n o n e 无1 9 9 9 一0 3 3 0 j 2 s e1 2 2 c r i c k e t 蟋蟀 19 9 9 - 0 7 0 8 j 2 s e1 3 k e s t r e l 美洲红隼 2 0 0 0 0 5 一0 8 j 2 s e1 3 1 l a d y b i r d 瓢虫 2 0 0 1 0 5 1 7 j 2 s e1 4 0 m e r l i n 灰背隼 2 0 0 2 - 0 2 一1 3 j 2 s e1 4 1 g r a s s h o p p e r蚱蜢 2 0 0 2 - 0 9 - 1 6 j 2 s e1 4 2 m a n t i s 螳螂 2 0 0 3 0 6 2 6 j 2 s e5 0 t i g e r 老虎 ( 1 5 o ) 将来发行的版本: j 2 s e5 1d r a g o n f ly 蜻蜒 未发布 ( 1 5 1 ) j 2 s e6 0m u s t a n g 野马未发布 ( 1 6 o ) 武汉理i :人学硕十学位论文 2 2j a v a 的优点 j a v a 是一种简单的语言 j a v a 删除了许多极少被使用、不容易理解和容易令人混淆的c + + 功能。剔除的功 能主要包括运算符重载、多重继承。与c + + 相比,j a v a 语言也提供重载函数,不过它 重载的对象是函数而非变量或是运算符。j a v a 还增加了自动内存收集功能,从而简化 了j a v a 程序的工作,不过同时也让系统变得稍微复杂了一些。体积小对于在嵌入式系 统中的使用是很重要的,正因为这样,j a v a 才能够通过网络轻易下载。 j a v a 是面向对象的语言 面向对象是在业界中一度流行的术语之一。不过,它确定是项很强的设计功 能,它可以促成明确的接口定义,并允许开发人员建立可重复使用的软件部件。 j a v a 是分布式语言 j a v a 拥有广泛的能轻易地处理t c p i p 协议的运行库,例如h t t p 与f t p 类库等 等。这使得在j a v a 中比在c 或c + + 中更容易建立网络连接。j a v a 应用程序可以借助 u r l 通过网络开启和存取对象,就如同存取一个本地文件系统一样简单。 j a v a 的健壮性 j a v a 的目标是要协助开发人员建立各方面可行的程序,j a v a 强调:开发人员可在 设计初期即检查可能存在的问题,其后则进行动态的检查,并排除容易出现的错误。 j a v a 与c c + + 之间最大的不同点之一在于j a v a 拥有一种模型,能排除内存被覆盖和毁 损数据的可能性。j a v a 不采用指针计算法,而是提供真正的数组阵列。 j a v a 的安全性 一个让j a v a 能如此受欢迎的主要原因之一是它的s e c u r e ( 安全性) 。简单的说 来,就是访客不能够写任何资料进你网站上的j a v aa p p l e t 档,无法由你的网站透过 j a v aa p p l e t 进入你的主机删除你的档案;甚或是偷到主机上客户的信用卡号码。 j a v a 是用s a n d b o x 的概念管理这些事情。 由j a v a 平台提供的最初的安全模型是一种沙箱模型,它是为了建立一个极有限的 环境而设置的,在这个环境中,可运行从开放网络中获取的不可信代码。沙箱模型的 实质是,本地代码是可信的,因而可全部访问关键系统资源( 如文件系统) ;而下载 的远程代码( 一个a p p l e t ) 是不可信的,因而只能访问出沙箱内部所提供的有限资 源。这种沙箱模型如下图一3 所示: 4 武汉理i 人学硕十学何论文 r e m o t e c o d e 图一3 j a v a 的可移植性 j a v a 适合各种需求,称之为跨平台可移植,有三个主要的原因:结构上提供了源 代码级的可移植性:应用程序编程模型被广泛而精确的描述( 特别是作为语言的一个 部分本身) ;语言的几个要素使它们易于移植。j a v a 中对基本数据结构类型的大小和 算法都有严格的规定所以可移植性很好。与平台无关的特性使j a v a 程序可以方便地被 移植到网络上的不同机器。同时,j a v a 的类库中也实现了与不同平台的接口,使这些 类库可以移植。另外,j a v a 编译器是由j a v a 语言实现的,j a v a 运行时系统由标准c 实现,这使得j a v a 系统本身也具有可移植性。 “w r i t eo n c e ,r u ne v e r yw h e r e ! ”( 一次编译,到处执行) 是j a v a 最诱人的特 点。用j a v a 开发而成的系统其移植工作几乎为零,一般情况下只需对配置文件、批处 理文件作相应修改即可实现平滑移植。 图一4 2 3j a v a 带来的影响 j a v a 作为软件开发的一种革命性的技术,其地位己被确立, 这表现在以下几个方 面: 武汉理l :人学硕七学位论文 计算机界的许多大公司已经购买了j a v a 的许可证,包括i b m ,a p p l e ,d e c , a d o b e ,s i l i 8 0 dg r a p h i c s ,h p ,o r a c l e ,t o s h i b a , n e t s c a p e ,m i c r o s o f t 。且 m i c r o s o f t 已在其w e b 浏览器e x p l o r e r 3 0 版中增加了对j a v a 的支持。这一点说 明,j a v a 已得到了工业界的认可。 众多的软件开发商开发支持j a v a 的软件产品。如b r o l a n d 产品j b u i l d e r 以及i b m 支助的e l i p s e 项目提供了j a v a 的集成开发环境,b e a ,i b m 也都推出了各自的 j 2 e e 应用服务器 针对企业应用,s u n 发布了j 2 e e 标准,并得到了大量的第三方厂商的支持,且涌 现了大量的j 2 e e 服务器,如w e b l o g i c ,w e b s p h e r e ,j b o s s 等,这些j 2 e e 服务器 的出现,为企业级计算提供了平台。 消费类电子产品领域,j 2 m e 为其提供了良好的解决方案,j 2 m e 在众多领域都得到 了充分的发挥,如手机游戏,智能卡等 越来越多要求跨平台的桌面级应用软件用j a v a 编写,如e c l i p s e ,j b u i l d e r 以及 我国自行研发的跨平台的办公软件永中o f f i c e 等 2 4j a v a 的现状: j a v a 技术诞生1 0 年来,已经从一种编程语言发展成为全球第一大软件开发平台, 并以其开放性、跨平台能力和面向网络的交互特性等技术优势为网络计算带来了跨时 代的变革。j a v a 从1 9 9 5 年的一个小小的编程开发工具,发展到了今天可驾御从智能 卡,小型消费类器件到大型数据中心的j a v a 平台,其发展速度是惊人的。j a v a 的大家 族中已有了下面三个主要成员: 1 j 2 髓叫a v a2m i c r oe d i t i o n 用于嵌入式j a v a 消费平台; 2 0 0 0 年1 2 月,s u n 公司宣布,它将推出j a v a 2 平台m i c r o ( j 2 m e ) 开发版和适用于 p a l mo s 平台的m i d ( m o b i l ei n f o r m a t i 0 1 qd e v i c e ) 规范概要。这些新品的推出将使2 5 0 多万j a v a 技术开发商更容易为通用的p a l mo s 平台创建应用程序。此外,s u n 和p a l m 公司还将通过j c e ( j a v ac o m m u n i t yp r o c e s s ) 项目与业界的其它专家一起为个人数字助 理( p d a ) 确定编程接口的技术规范。开发者因为能把他们的j a v a 技术经验用在p a l m o s 平台上配置解决方案两受益;终端用户因为能将采用j 2 m e 编写的应用程序用于新的 企业,商务,娱乐和通信等解决方案而受益。有了相对于p a l mo s 平台的j a v a 技术发 展规划,开发商们将会拥有标准化的适用于业界应用的解决方案。 2 j 2 s b 忡j a v a2s t a n d a r de d i t i o n 用于工作站,p c 机的j a v a 标准平台。 在j a v a 2 平台j d k l 2 发布之后, 2 0 0 1 年9 月发布了j 2 s d k l 4 b e t a 2 版。 s u n 公司又相继发布了j 2 s d k l 3 ,j 2 s d k l 3 1 , 他们都是支持分布式计算的免费的j a v a 2 标准 6 武汉理i - 大学硕士学位论文 平台。j a v a 2 标准平台体现了s u n 公司的开放精神,被称为“互联网上的世界语”,公 布于互联网上供大家免费享用,甚至连源代码也不保密,可以在网上免费下载。 3 j 2 e b j a v a 2e n t e r p r i s ee d i t i o n 可扩展的企业级应用j a v a 2 平台。 2 0 0 1 年1 月,s u n 公司在旧金山召开了关于j a v a 2 平台企业版( j 2 e e ) 的新闻发布 会。j 2 e e 是分布式企业软件组件架构的规范,具有w e b 性能,具有更高的特性,灵活 性,简化的集成性,便捷性,以及j 2 e e 服务器之间的互操作性。目前已有9 个取得 j 2 e e 技术许可的公司推出了基于3 2 e e 技术的兼容性产品。这些公司都通过了j 2 e e 兼 容性测试( c t s ) 中的各项测试,满足了j 2 e e 技术品牌中的所有要求。当前,有2 5 个 公司持有j 2 e e 平台的许可证,他们代表了应用服务器市场的7 6 9 0 的厂商。 i n t e r n e t 的发展促进了j a v a 的发展,“j a v a 将成为所有平台的统一语言”,除 了微软以外,业界所有厂商都在期待这一天。今天,j a v a 已经不再仅仅属于s u n 了, i b m 、b o r l a n d 、b e a 、o r a c l e 甚至微软都在研究更好的j a v a 系统,这些软件巨头的加 入,加快了j a v a 的发展。 j a v a 为w w w 世界开辟了一个崭新的时代,它对i n t e r n e t 的发展和普及产生了巨大 的推动力,但从更深的一种层次来说,它影响的是整个计算产业的发展。 7 武汉理 大学硕士学位论文 第三章j 2 e e 概述 3 1d 2 e e 介绍 j 2 e e 是一个开放的、基于标准的丌发和部署的平台,用于构建n 层的、基于w e b 的、以服务端计算为核心的、模块化的企业应用。j 2 e e 同时也是所有兼容j 2 e e 标准的 应用服务器产品的统一标识。j 2 e e 应用的组件如企业j a v a b e a n ( e j b ) 、j s p 和 s e r v l e t 运行于j 2 e e 容器之中,通过连接器访问企业信息系统,如数据库系统、e r p 系统和其他应用程序系统。j 2 e e 应用可以集成一系列的客户端,包括独立运行的台式 客户端、无线客户端,以及基于w e b 浏览器的客户端等。j 2 e e 平台为开发企业应用提 供了高性能、高可靠性和可伸缩性的运行支撑环境。 j 2 e e 提供了一个多层的端到端的应用系统架构。在客户端层,多种客户端可通过 多种不同的协议来访问中间层的j 2 e e 服务,在设计j 2 e e 应用的时候,首先需要选择 的就是j 2 e e 客户端的类型,应根据用户的使用模式及应用环境的特点来选择适合的客 户端类型和通信协议,如j a v aa p p l e t 客户端和j a v aw e bs t a r t 客户端适合于复杂的 图形用户界面,如大量的数据录入、数据统计等应用,能满足高效的用户交互需求, 根据具体应用环境的不同,可选择h t t p ( s ) 、附i i i o p 或j n l p 等通信协议。 在中间层,主要包括w e b 服务器和应用服务器。在实际部署时,它们可以运行于 单一的或多个物理平台上。从可靠性和可伸缩性考虑,应该采用多个w e b 服务器和应 用服务器。w e b 服务器接受从客户端发来的请求,通过j s p 和s e r v l e t 技术动态生成响 应的内容,j s p 或s e r v l e t 可以接着调用运行于应用服务器e j b 容器中的企业 j a v a b e a n 进行相应的业务处理和运算。而中间层通过标准的协议访问企业信息系统层 来读取数据和调用服务。 3 2j 2 e e 应用 ( 1 ) j 2 e e :多层、分布式中间件语法 采用多层分布式应用模型,j 2 e e 将应用开发划分为多个不同的层,并在每一个层 上定义组件。各个应用组件根据他们所在的层分布在同一个或不同的服务器上,共同 组成基于组件的多层分布式系统。典型的j 2 e e 四层结构包括客户层、表示逻辑层 ( w e b 层) 、商业逻辑层和企业信息系统层。有了j 2 e e ,分布式系统的开发变得简单 了,部署的速度也可以加快。j 2 e e 组件的分布与服务器环境无关,所有的资源都可通 过分布式目录进行访问。这意味着开发人员不再需要为组件和资源的分布问题耗费精 力,从而可以有更多的时间专注于业务逻辑的实现,提高开发效率。 ( 2 ) j 2 e e :企业级应用系统开发平台 本身是一个标准,一个为企业分布式应用的开发提供的标准平台。而j 2 e e 的实 武汉理 :大学硕十学何论文 施,则具体表现为诸女u b e aw e bl o g i c 或i b mw e bs p h e r e 之类的特定w e b 服务器产 品。利用j 2 e e 应用编程模型开发的企业应用系统,可以部署在不同厂商生产的、但 相互兼容的j 2 e e 应用服务器上。 ( 3 ) j 2 e e :电子化应用开发模型 j 2 e e 应用很容易发布到w e b 、掌上电脑或移动电话等手持设备上。换言之,应用 组件可以很轻松地实现电子化。j 2 e e 的应用一编程模型保证组件在向不同类型的客户 端移植过程中,商业逻辑和后端系统保持不变。此外,j 2 e e 平台的其他主要优点还 有:自动负载平衡、可伸缩、容错和具有故障排除等功能。部署在j 2 e e 环境中的组件 将自动获得上述特性,而不必增加额外的代码开销。j 2 e e 所有这些特性对于需要构建 全天候网络门户的企业来说显得尤为重要。 ( 4 ) j 2 e e :w e b 应用服务器上广泛采用的标准 可以说,j 2 e e 是首个获得业界广泛认可和采纳的中间件标准。目前几乎所有的一 流w e b 应用服务器,如b e a 的w e bl o g i c 、i b m 的w e bs p h e r e 、h p 的应用服务器、s u n 的i p l a n e t 和m a c r o m e d i a 的j r u n 等,都是基于j 2 e e 的。迄今为止,还没有哪个其他 标准能获得如此众多的中间件供应商的一致支持。而且,有了j 2 e e ,企业的应用开发 对于某个特定的开发商或应用服务供应商的依赖性更小。应用组件只要符合j 2 e e 规 范,完全可以部署在不同的应用服务器上。我们可以试着用句话来概括j 2 e e ,那就 是:j 2 e e 是一个中间件基础架构,有了它,开发者只需要集中精力编写代码来表达企 业应用的商业逻辑和表示逻辑,至于其他系统问题,如内存管理,多线程,资源分布 和垃圾收集等,都将由j 2 e e 自动完成。 3 3j 2 e e 优点 独立于硬件配置和操作系统( 保护现有的投资) j 2 e e 运行在j a v a 虚拟机( j v m ) 上,利用j a v a 本身的跨平台特性,独立于硬件 配置和操作系统。j a v a 运行环境( j r e ) j v m 的可安装版本加上其他一些重要组 件几乎可以运行于所有的硬件0 s 组合。因此,通过采用j a v a ,j 2 e e 使企业免于 离昂的硬件设备和操作系统的再投资,保护已有的i t 资源。在很多情况下,j 2 e e 还 可以直接运行在e i s 服务器环境中,从而节约网络带宽,提高性能。如图一5 9 武汉理_ l :大学硕七学位论文 坚持面向对象的设计原则 作为一门完全面向对象的语言,j a v a 几乎支持所有的面向对象的程序设计特征。 面向对象和基于组件的设计原则构成了j 2 e e 应用编程模型的基础。j 2 e e 多层结构的 每一层都有多种组件模型。因此,开发人员所要做的就是为应用项目选择适当的组件 模型组合,灵活地开发和装配组件,这样不仅有助于提高应用系统的可扩展性,还能 有效地提高开发速度,缩短开发周期。此外,基于j 2 e e 的应用还具有结构良好,模块 化,灵活和高度可重用性等优点。 灵活性、可移植性和互操作性 利用j a v a 的跨平台特性,j 2 e e 组件可以很方便地移植到不同的应用服务器环境 中。这意味着企业不必再拘泥于单一的开发平台。j 2 e e 的应用系统可以部署在不同的 应用服务器上,在全异构环境下,j 2 e e 组件仍可彼此协同工作。这一特征使得装配应 用组件首次获得空前的互操作性。例如,安装在i b mw e b s p h e r e 环境下的e j b ,一方面 可以直接与w e b s p h e r e 环境下的c i c s 直接交互,另一方面也可以通过安装在别处的 b e aw e b l o g i c 服务器上的e j b 进行访问。 引进面向服务的体系结构 作为一个被业界广泛采用的中间件标准,j 2 e e 是开发可伸缩的、具有负载平衡能 力的多层分布式跨平台企业应用的理想平台。j 2 e e 的首要任务在于提供一个标准中间 件基础架构,由该基础架构负责处理企业开发中所涉及的所有系统级问题,从而使得 开发人员可以集中精力重视商业逻辑的设计和应用的表示,提高开发工作的效率。 j 2 e e 有效地满足了行业需求,提供独立于操作系统的开发环境。基于j 2 e e 的应用系 o 武汉理i :人学硕十学位论文 统灵活且易于移植和重用,可运行在不同厂家的w e b 服务器上。更为重要的是,j 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 技术的全面支持。其最终目的就是成为一个能够使企业开发者大 幅缩短投放市场时间的体系结构。 3 4j 2 e e 体系结构 3 4 1 分布式的多层次应用 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 典型的四层结构: 运行在客户端机器上的客户层组件 运行在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 ) 层软件 如图一6 所示: 武汉理j :人学硕士学位论文 j 2 e e。1 2 e e a p p l i c , t i n n1 a p p l i c a h o n2 c f i e n t l c i i e n t 了i e r m a c h i n e w e

温馨提示

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

最新文档

评论

0/150

提交评论