




已阅读5页,还剩50页未读, 继续免费阅读
(计算机应用技术专业论文)基于j2ee平台的单据自动流转系统的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
南京航空航天人学硕1 :学位论文 摘要 随着w e b 和i n t e r n e t 的飞速发展,现在越来越多的企业应用是基于w e b 的,包 括企业内部网和外部网应用。j 2 e e 为基于w e b 的企业应用提供了无与伦比的支持。 j 2 e e 是一个标准的体系结构,它特别面向使用j a v a 程序设计语言进行基于w e b 的企 业应用的丌发与部署。 木文首先探讨了企业应用体系结构的发展过程及其原因,分析了j 2 e e 平台的基 础、体系结构以及特点,介绍了j 2 e e 应用中的各种组件,包括客户组件、w e b 层组 件j s p s e r v l e t 和业务层组件e j b ,以及这些组件之间的关系。接着在j 2 e e 平台上 设计了一个应用框架,该框架运用了多个设计模式,可以使应用丌发人员从系统架构 中迅速解脱出来,把更多的时间和精力,投入到用户方的商业及业务逻辑的分析设计 中去。最后在该框架的基础上,开发了一个可以实现流程的定制和自动流转等功能的 单据自动流转系统,该系统为办公自动化技术在企业中的应用提出了基于j 2 e e 平台 的解决方案。 关键词:1 2 e e 、j s p 、s e r v l e t 、e j b 、容器、应用框架、设计模式 一 一r 一一一- ,一 鉴丁j 2 e e 平台的单据口动流 系统的嫂计与实现 a bs t r a c t w it ht h er a p i dd e v e l o p m e n to ft h ew e ba n dt h ei n t e r n e tt e c h n o l o g y m o r e a n dm o r ee nc e r p r i s ea p p l i c a t i o n sa r enoww e b b a s e d ,i n c l u d i n gb o t h i n t r a n e t a n de x t r a n e ta p p l i c a t i o n s t h ej 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 7 m ) p r o v i d e ss u p e r i o rs u p p o r tf o rw e b b a s e de n t e r p r i s ea p p l i c a t i o n s j 2 e ei sa s t a n d a r da r c h it e c t u r es p e c i f i c a l l yo r i e n t e dt ot h ed e v e l o p m e n ta n dd e p l o y m e n t o fe n t e r p r i s ew e b o r i e n t e da p p l i c a t i o n su s i n gt h ej a v ap r o g r a m m i n gl a n g u a g e i nt h i sd i s s e r t a t i o nw ef i r s td i s c u s s e dt h ee v o l u t i o no f e n t e r p r i s e a p p l i c a t i o na r c h i t e c t u r e sa n d t h er e a s o n so ft h i se v o l u t i o n s e c o n d l y ,w e a n a l y z e dt h eb a s i sa n da r c h i t e c t u r ea n dc h a r a c t e r so ft h ej 2 e ep l a t f o r m t h e n w ei n t r o d u c e dt h ed i f f e r e n tk i n d so fc o m p o n e n t so fj 2 e ea p p ii c a t i o n ss u c ha s cl i e n ti a y e rc o m p o n e n t sa n d w e bl a y e rc o m p o n e n t sl i k ej s p s e r v l e ta n db u s i n e s s l a y e rc o m p o n e n t sl i k ee j ba n d t h er e l a t i o n s h i pb e t w e e nt h e s ec o m p o n e n t s a f t e r t h a t ,w ed e s i g n e da na p p l i c a t i o nf r a m e w o r kb a s e do nj 2 e ep l a t f o r m t h e f r a m e w o r ku s e ds e v e r a ld e s i g np a t t e r n sa n dc o u l dt e l e a s e a p p l i c a t i o n d e v e l o p e r sf r o ms y s t e ma r c h i t e c t u r ed e s i g nr a p i d l ys ot h a tt h e yc o u l dd e v o t e m o r et i m ea n de n e r g yt ot h ea n a l y s i sa n dd e s i g no fc o m m e r c ea n db u s i n e s sl o g i c f o rt h eu s e r a tl a s tw ed e v e l o p e dab i l l 一a u t o f l o ws y s t e mt h a tc o u l df u l f i 儿 s u c hf u n c t i o n sa sf l o wc u s t o m i z a t i o na n da u t o - f l o wc o n t r o lb a s e do nt h e a p p l i c a t i o nf r a m e w o r kw ed e s i g n e d t h er e a l i z a t i o no ft h i ss y s t e mp r o v i d e d as o l u t i o nf o rt h eu s eo fo a ( o f f i c ea u t o m a t i o n ) t e c h n o l o g yi ne n t e r p r i s eb a s e d o nj 2 e ep l a t f o r m k e yw o r d s :j 2 e e ,j s p ,s e r v l e t ,e j b ,c o n t a i n e r ,a p p l i c a t i o nf r a m e w o r k ,d e s i g n p a t t e r n i 1 课题背景 第一章绪论 计算机网络、通讯技术的广泛应用给人们的工作和尘活带来了r 新月异的变化, 办公自动化系统的发展正是这种变化的主要方面。办公自动化是指将企业f 1 常处理各 种事务和信息的过程,在办公主体一一人的控制下,利用现代化的工具和手段自动完 成。在企业中,纷繁复杂的业务往往体现为各种各样的单据,单据的自动流转是办公 自动化系统的核心。所谓单据自动流转就是单据从收文或起草到归档,并在处室或部 门之i 邯逐级审批的自动流转过程。 单据自动流转的目的是加强人们之间的相互交流及协同工作,提高员工的工作效 率和企业的信息化水平。单据流转具有如下特点: 1 ) 其最终目标是提高企业的整体办公效率,而不仅是提高个人的工作效率。从 表面上看土要是实现对办公过程中的草据、信息的计算机管理,实质上其关 键是对工作业务流程的规范化管理。 2 ) 企业员工的办公习惯和工作方式不可能一样,单据自动流转系统应能尽量满 足用户的需求但更重要的是使工作流程规范化。 3 ) 企业员工的岗位职责明确,许多事务的处理需要相互协作才能完成。单据自 动流转系统应能尽可能提高员工之间的协作程度。 4 ) 办公流程是一个复杂和多变的过程,没有统一固定的形式可循,在日常办公 中对不同单据和不同事务的处理有不同的流程。 5 ) 对不同的单据,其在流转过程中,不同层次、级别的办工人员的操作权限不 同,因此单据流转系统需要有权限控制。 从目前的现状看,企业的计算机网络虽然建立起来,在一定程度上提高了个人的 工作质量和效率,但大部分企业业务所涉及到的单据流转依然停留在人工处理阶段, 整个企业的单据流转过程效率极为低下。企业要想提高工作效率,增强竞争力,必须 有效地利用先进的网络和计算机技术,提高单据流转的自动化水平,实现各部门之阃 的有效协作,达到企业的总体目标。 另一方面,自2 0 世纪7 0 年代以来,世界i 肓场已经由传统的相对稳定逐步演变成 动念多变的市场企业之汹的竞争r 趋激烈,企业所面临的社会、经济、制造环境与 客户需求也已经发生并还将继续发生巨大的变化。企业如何根据迅速变化的外部环 境,快速灵活地制定新的工作流程或调整原有的工作流程并且保护已有的技术、管 理方面的投资,成为企业提高应变能力和综合竞争能力,从而赢得市场竞争所必须解 决的问题。 基丁j 2 e e 平台的单据臼动流转系统的设计与实现 传统的企业计算机管理信息系统对于企业完善管理、提高工作效率做出了不可磨 灭的贡献。然而,技术上的不足已经阻碍了其进一步的发展。传统的管理信息系统的 不足主要表现为: i ) 难以很好的实现企业业务中涉及到的各种单据的自动流转。在现代企业中, 一个单据流转的过程往往是分为不同阶段,由不同的人来协作完成。企业单 据流转自动化的要求是普遍存在的,因为任何企业或机构的业务都是由一系 列环节构成的业务流程组成的,用户希望软件系统不仅能够解决独立环节的 业务问题,而且能够自动把这些环节串连起来,希望一个环节所做的工作能 够自动被下一个环节利用。一般复杂的管理信息系统由多个业务流程组成, 而各个流程中,每个环节都分得很细,环节上的任务比较单一,这对工作人 员比较方便,可是却向i t 技术人员提出了挑战。 2 ) 业务流程是静态的,不具备很好的柔性。当企业的业务或外部环境发生变化 时,企业内部的单据流转的整个流程也会发生相应的变化。传统的企业计算 机管理信息系统中,流程采用静态管理,必须根据不同的单据类型设计不同 的流程并编写相应的程序代码。如果流程发生变化或增加新的流程,常常需 要进行相应的二次开发工作,这一般都要涉及到对原系统内部程序的大量数 据库表的深入理解,并在原系统外围建立新的数据库表和开发多种接口转换 程序。这个过程需要消耗大量的人力、财力,系统的开发量和维护量非常大, 且不能很好地适应当今丰富多变的单据流转的需要,不利于保护企业已有的 投资,而且容易造成系统混乱,给新产生的系统带来运行稳定性和安全性等 隐患。 3 ) 难以适应i n t e r n e t i n t r a n e t 的发展。本质上和w e b 是不兼容的,客户端和 服务器端采用的是私有的通信协议,没有利用h t t p 协议的通用性。用户的操 作界面也是应用专有的,常使用户感到难以学习,难以操作。 综上所述,传统的企业管理信息系统开发存在的问题有:扩展能力差、难以维护、 可重用性差、柔性差、难以实现单据的自动化流转、企业业务的较小变化可能引起系 统的重大修改。这就篙要寻求新的解决方案来帮助企业应对迅速变化的外部环境,提 高单据流转的自动化程度。 1 2 课题简介及来源 本文以南京金鹰国际购物中一0 商业自动化系统的开发为课题来源,从中提炼出单 据自动流转子系统。 目前单据自动流转系统的趋势是建立在i n t e r n e t i n t r a n e t 环境下,通过操作简 单、功能丰富、通用性强的浏览器运行,适合企业内外集群办公的综合性办公环境。 它随着i n t e r n e t 的流行而诞生,劳将随其突飞猛进的发展而成为新世纪的单据流转 2 f 莉_ r 航空肮人人干 “卜1 :i 何沦艾 系统的主流。在i n t e r n e t i n t r a n e t 上削浏览器方式丌发单据自动流转系统,可以直 接利用i n t e r n o th 成熟的信息收集能力以及可以无限延仲的信息节点等技术优势, 1 m 且浏览器这种界面格式已广泛被接受,大多数阍o 能够快速尤障僻操作。 辏于ln lo r n o t ln t r a n e t 方式的堆据自动流转系统,具有其独特的优势,主要表 现在: 1 ) 支持真f 的异地办公。传统的单据自动流转系统虽然在一些方面还有其优点, 但一般只局限在单位内部的局域网中使用,异地使用只能通过远程登录方式 进行,既不安全也容易出错,实际工作中无人使用;i n t e r n e t i n t r a n e t 方式 的单据自动流转系统最突出的优点就是支持异地办公,满足行业系统、企业 集团甚至是跨国集团的办公,只要能上i n t e r n e t 的计算机,原则上就能够像 单位内部的工作站一样,方便地处理办公事务,同时“防火墙”技术又能很 好地保证信息和数据的安全。 2 ) 成本低廉。采用i n t e r n e t i n t r a n e t 方式的单据自动流转系统,除了搭建网 络环境和购买应用软件等与其他办公系统相同的开销外,不再需要购买任何 用于软件运行的应用平台,同时也就不再需要额外支出那些由于运行应用软 件平台而带来的额外的系统资源开销。与其他所有办公系统相比,这种方式 成本最为低廉。 3 ) 操作简单。与其他办公自动化系统具有各自不同风格的用户界面相比,基于 i n t e r n e t i n t r a n e t 方式的单据自动流转系统采用统的、为人们熟知的浏览 器界面,因此无须特殊的操作即可启动应用系统,习惯于使用浏览器的用户, 甚至不经培训即可无障碍操作,由于人们都有先入为主的习惯,因此其他方 式的系统界面再友好,也不会有浏览器方式操作被用户接受的快。 4 ) 快速本地化。系统采用用户可设置的定制流程和自由流程相结合的方式,处 理办公事务。因此商品软件本地化时,如果用户单位事务处理流程不同,用 户可自行修改流程,无须修改程序。 j ) 维护方便。由于i n t e r n e t i n t r a n el 方式的办公自动化系统所有功能性的应 用程序都在w e b 服务器上,用户端没有任何与操作功能有关的程序,因此用 户业务内容发生变化或软件故障需要修改和维护时,只需修改和维护w e b 服 务器上的软件即可,与其他可能分布在单位各个部门,甚至远在国外的用户 端计算机没有任何关系,甚至这种系统软件的维护工作开发公司可以不到现 场,通过i n t e r n e t 网就能实现真正的远程维护,系统的维护成本又可大大降 低。 同时通过对单据流转系统的细致分机,发现流程中有些因素是不变化的,有些因 豢是变化的。例如流程中单据的各个流转环节的处理模式可以是不变的,而流转环节 上单据的内容、属性是变化的。因此,单据自动流转系统应出动念流程定义和通用程 序控制来完成。单据实体是流转于动态流程之上的实际单据。 3 罄i - 2 e e 平台的单据自动流转系统的设计与实现 由于j a v a 的诸多优点和j 2 e e 平台对基于w e b 的应用系统丌发的无与伦比的支持, 本文丌发的单据自动流转系统是基于j 2 e e 平台的,采用b s 架构。该系统较好的解 决了传统管理信息系统存在的诸多不足。垓系统可以改进和优化单据流转的流程,流 程采用动态管理,管理员只需报据单据类型来定义流程而不必编写相应的程序代码, 流程由程序动惫管理;在企业内部实现更好的业务过程控制和业务监督机制,可以有 效地实现单据的自动化流转,使企业内部员工可以高效地协同工作,从而减少企业对 市场需求变化的反应时间。 1 3 论文结构 本文主要研究了基于j 2 e e 、平台的b s 架构的应用框架设计,并在该框架的基础 上,设计并实现了一个单据自动流转系统。论文主要内容如下: 第一章绪论:简要介绍了在企业中建立单据流转自动化系统的必要性,分析了 传统企业管理信息系统的不足。 第二章分布式计算技术和企业应用体系结构的发展:介绍了分布式计算技术的 发展情况,比较了当前流行的各种分布式计算技术,分析了企业应用体系结构的演进 过程及发生这种演进的原因。 第三章j 2 e e 应用体系结构:介绍了3 2 e m 应用体系结构、组成j 2 e e 平台的各种 组件、这些组件之间的关系以及j 2 e e 对于企业应用开发所提供的无与伦比的支持。 第四章单据自动流转系统业务分析:主要对金鹰国际购物中心的业务情况进行 了分析。 第五章单据自动流转系统整体设计:对将要开发的单据自动流转系统进行了整 体设计,包括开发了一个应用框架、多种设计模式的应用等。 第六章基于j 2 e e 平台的单据自动流转系统的开发:结合南京金鹰国际购物中心 的具体业务情况,在应用框架的基础上,丌发了一个基于j 2 e e 平台的b s 架构的单 据自动流转系统。 最后,对论文所做的工作进行了总结,对该系统的进一步开发提出展望。我希望 通过我的工作,能为企业的办公自动化建设起到一定的借鉴作用,加快企业信息化建 设的步伐。 南京航空航犬人学颁+ :学位论文 第二章分布式计算技术和企业应用体系结构的发展 在信息产业高速发展的今天,企业间的竞争将更加激烈。随着规模的不断扩大和 业务的不断更新,企业迫切需要完整的分布式解决方案,用于管理复杂的异构环境, 实现不同硬件设备、软件系统、网络环境及数据库系统之间的完整集成。 纵观人类计算机的发展历史,每隔十年至十五年,信息产业就会发生周期性的变 革。1 9 5 0 年至1 9 7 0 年期间,企业主要采用大型主机一终端的体系结构,企业应用系 统则采用单一、集中的方式为用户提供资源共享服务。8 0 年代初期,开放系统与关 系型数据库管理系统被企业大量采用,有别于集中式系统,应用程序逻辑分散在主从 话端。随着w i n d o w s 的普及,9 0 年代则是图形化的应用时代,c 1 l e n t s e r v e r 体系结 构也被广泛采用。9 0 年代后期,信息产业出现了分布式对象技术,应用程序可以分 布在不同的系统平台上,通过分布式技术实现异构平台间对象的相互通信。将企业已 有系统集成于分布式系统,可以极大地提高企业应用系统的扩展性。9 0 年代末出现 的多层分布式应用为企业进一步简化应用系统的开发指明了方向。本章将对当前的各 种分布式计算技术进行比较,并介绍企业应用体系结构的发展。 2 1 分布式计算技术的发展 2 1 _ 1 分布式系统概述 未来对计算速度、系统可靠性和成本实效性的要求促使发展另外的计算机模型来 替代传统的冯诺依曼结构的计算机。随着计算机网络的出现,一个新的梦想成为可 能分布式计算。分布式计算系统( 或分布式系统) 是指一个对用户看起来像普通系 统,然而运行在一系列自治处理单元( p e ) 上的系统,每个处理单元有各自的物理内存 空间并且消息的传输延迟不能忽略不计。在这些处理单元间有紧密的合作。系统必须 支持任意数量的进程和处理单元的动态扩展。分布式系统体系结构如下图2 1 所示。 a ) 物理观点的系统结构b ) 逻辑观点的系统结构 图2 - 1 分布式系统结构 丛j ij 2 1 - 11 、r 二f 的帆“一:1 ir 巩流转最统f n 垃汁o 实f 虻 刈分靠式系统的系统结构应该从物理分钸和逻辑分布两方丽去日! 解, :图分别从 物理的和逻辑的观点表示了这样一个系统。 当用户需要完成任何任务时,分析式计算提供对尽可能多的计算机处理能力和数 掂的透明访问,同时实现高性能与商可靠性的目标。对一些用户束说,一个分柿式系 统是为解决单个问题而紧密结合在一起工作的多处理机的集合。对另一些用户来说, 一个分布式系统可能意味着一个出地理上分敞的各自独立的处理机组成的计算机网 络,这些处理机连接在一起以实现对不同资源的共享。尽管分稚式计算系统( 或分布 式系统) 多种多样并涉及不同的系统体系结构,但其基础是计算机网络技术。 向分柿式系统发展的主要推动因素在于: 1 ) 固有的分布式应用。分布式系统以一种很自然的方式丌始存在,例如,企业 中的各个部门地理上是分布式的并且分布地共享信息。 2 ) 性能成本。分布式系统的并行性减少了处理瓶颈,全方位提高了性能,具有 更好的性能价格比。 3 ) 资源共享。分布式系统能有效支持异地用户对信息和资源( 硬件和软件) 的共 事。 4 ) 灵活性和可扩展性。分布式系统可以增量扩展,并能方便地修改或扩展系统 以适应变化的坏境而无需中断其运行。 5 ) 实用性和容错性。依靠存储单元和处理单元的多重性,分布式系统具有在系 统出现故障的情况下继续运行的潜力。 6 ) 可伸缩性。分布式系统容易扩大规模以包括更多的资源( 硬件和软件) 。 目前分稚式计算技术在企业计算中得到了广泛应用。这是因为随着企业业务的不 断发展,企业的数据量和计算量会不断增长,c s 模式下单靠一台计算机既是数据库 服务器,又是应用层服务器,很容易使该台计算机成为工作瓶颈,使用分饰式计算技 术可以有效地均衡负载,充分发挥每台计算机的计算能力。 2 1 2 分布式计算标准 由于在不同的平台上,如p c 、工作站、局域网和广域网上可获得非常多样的应用, 用户希望能超出他1 f 2 p c 的限制以获得更广泛的特性、功能和性能。不同网络和环境( 包 括分布式系统环境) 下的互操作性变得越来越重要。为了达到互操作性,用户需要一 个标准的分布式计算环境,在这个环境罩,所有系统和资源都可用。 目静,分布式计算技术的标准主要有:o s f ( 丌放软件基会会) 的d c e ( 分布式计算 环境) 、微软的d c o m ( 分布式组件对象模型) 和o m g 的c o r b a ( 公菸对象请求代理结构) 以 及s u n 的j a v a r m 、a n s a ( 先进网络系统结构) 的d i m 姒( 分析j 式交互多媒体结构) 等。它 们分别致力于分布式计算环境、分布式对象计算、分行式多媒体计算等方面的工作。 下面将分别进行介绍。 6 南京航空航犬人。# 硕 :导:侮论文 i o s f 的分布式计算环境 d c e ( 分布式计算环境) 是o s f ( 开放软件基余会) 丌发的分稚式计算技术的工业标 准集,是早期采用面向过程技术的分布式计算标准和实现。它提供安全服务以保护和 控制对数据的访问、目录服务以方便寻找分布式资源、以及高度可伸缩的模型用于组 织极为分散的用户、服务和数据。d c e 可在所有主要的计算平台上运行,并设计成支 持异构型硬件和软件环境下的分布式应用。d c e 包会了一套被o s f 集成的技术,这些技 术包括以下各项: a ) 远程过程调用r p c ,通过接口定义语言i d l 对楣应的数据和命令语言进行说明。 b ) 目录服务,帮助客户确定服务器等的名称和定位。 一 c ) 提供计算机相互通信的真实性和权限的安全机制。 d ) 分布式时间服务,实现网络范围内分布式处理活动的同步。 e ) 可选的分布式文件服务,支持客户和服务器问的文件共享。 f ) 标准应用编程接口,用户或第三方厂商使用a p i 开发各种分布式应用。 g ) 线程包( t h r e a dp a c k a g e ) 。 d c e 已经被包括t r a n s v a r l 在内的一些厂商实现。t r a n s v a r l 是最早的多厂商组 ( m u l t i i v e n d o rt e a m ) 的成员之一,它提出的建议已成为d c e 体系结构的基础。 d c e 标准集中的r p c ( 远程过程调用) 是一种面向过程的分布式计算模型。其思想 是这样的:使进程产生的调用看起来像是一个普通的本地调用,而真正的执行是在其 他进程中可能是个远程系统中的进程。各种r p c 执行协议都朝着一个共同的目 标在发展:用隐藏执行细节来简化进程问通信的复杂性。 r p c 机制的核心概念就是将函数调用产生的数据串行化到一个顺序流中,然后在 连接接收端对它进行重组。r p c 客户端进程发出一个看似标准的函数调用,但是,这 个调用不会在本地执行,调用参数被打包并传递到一个远程的执行环境当中,在那里 它们再被传入真正的执行函数当中。在完成函数执行后,执行结果又被串行化传回客 户端,再由客户端函数传给调用者。r p c 机制是同步的,因而要求客户方和服务方均 要能正常工作。r p c 机制适合于开发小型简单的请求应答模式的应用。 由于d c e 中的标准,包括r p c 都是以c 语言中的过程化编程方法为基础制定的, 这在一方面也限制它对于多语言和面向对象的支持。 2 分布式对象计算标准 近年来,面向对象( o b j e c t - o r i e n t e d ) 方法和技术受到普遍重视,是目前软件研 究和应用丌发中最活跃的一个领域。咳方法设计的软件系统结构清晰、易于适应需求 的变化,具有较好的可扩充性和易维护性。面向对象思想和分布式计算技术的结合形 成了分和式对象计算模型,并发展为当今软件技术的主流方向。 分布式对象结构将程序数据封装在具有方法接口的对象之中,对象内的执行细节 对于调用者来说是不可见的。并且在分布式对象结构中,对于对象中的方法调用也作 了限制。用户不能像调用a p i 一样去奁接调用这些方法,而只能通过间接的形式进行 7 基丁3 2 e e 平台的单据自动流转系统的殴计b 实现 调用。另外,用户在调用对象的时候也只需要使用对象的引用,而不再需要刨建本地 实例。出于分布式对象结构完全隐减了对象的执行细节,所以程序执行的地点、平台 和编程语言对外界来说都是透明的。分布式对象结构如下图2 - 2 所示: lj j 分布脆务 图2 2 分布式对象结构 目前,比较流行的分布式对象技术有:微软的d c 嘶、o m g 的c o r b a 以及s u n 的 j a v a r m l 。 1 ) 分布式组件对象模型d c 伽 微软分布式对象模型的核心协议就是d c o m ,它是微软c o m 集成结构的扩展,主要 是为不同网络环境中的分布对象提供交互的标准。 c o m 让客户程序可以动态连接到对象,然后执行。例如,在客户程序运行时,可 以将这些对象合并到一个单一的地址空间中。执行的具体过程被包装到动态链接库中 ( d l l ) 。由于c o m 为了保证二进制兼容而采用了c + + 的虚拟函数表,它实质上是一种 程序间的集成方案。这些虚拟函数表( 一般称作“虚表”) ,用c 语言中的概念来解释 就是函数地址( 函数指针) 表。c o m 接口就是作为指向虚表的指针提供给用户的,这样 函数的运行细节就变得不可见了。这种特性使二进制形式的c o m 对象可以灵活地进行 替换。只要给定的接口不改变,这些二进制代码可以用于实现任何功能。 为了适应分布于多个主机上的对象的需要( 比如,多个物理地址空间) ,微软开发 了c o m 的扩展版本:d c o m 。作为对c o m 的扩展,d c o m 只是在调用程序和实际的执行 接口之间插入了一个转换接口,这种结构和基于r p c 机制的抽象模型十分类似。 虽然d c o m 依赖于w i n d o w s 平台,但由于几乎所有运行w i n d o w s 的计算机都使用 了内建的c 。m 支持,并且大多数3 2 位版本的w i n d o w s 还支持d c o m ,这使得在w i n d o w s 环境下d c o m 成为一个分布式对象标准的强有力的竞争者。 2 ) 通用对象请求中介体系结构c o r b a c o r b a 是对象管理协会( o m g ) 发布的异构网络分椎对象的交互标准,是最早出现的 分布式对象计算摸型,目前的版本是3 0 。c o r b a 的主要目标是解决面向对象的异构 应用之间的互操作问题,并提供分布式计算所需的一些其它服务,例如安全、交易和 消息传递等。o r b 是c o r b a 平台的核心,它用于屏蔽与底层平台有关的细节,c o r b a 对象通过o r b 进行交互。不同供应商的c o r b a 平台之间通过i l o p 实现互操作。由于 这是个平台无关的对象交互标准,所以得到了业界的广泛认同。 g 南j x 航宅航凡人、:坝卜、? :似论殳 c o r b a 使应用程序能够使用一个共同的搂,这个嫉l :l 可以在多种平f f 和多个) 1 : 发j m f j 用接口定义语吉( i d l ) 来浼f 】。o m ( ;的i 眦匙、i 台乖l 浯尚无关的,而数据及 调用格式的转换则是由o r b 透明地完成。所有的c o i b a 对象接口,以及接i p 相关的 数据类型,郜町以由接l 定义语言( i d l ) i _ ;乇明。这种刈接i 的公其定义方 :使应用程 序能够在不涉及n x 寸象的具体运行方式时对对象进行操作。 对于使用c o r b , 对象的应用程序来蜕,c o r b a 对象的执行地点和执行f i l l 霄都是不 u r 见的。一般来讲,c o r b a 客户仅仅需要知道怎样通过一些公共的对象接,例如查 询对象接口,束发现或者刨建需要使用的对象。这种情况下,客户程序不;* 要了解对 琢的具体地点,只需要知道各个对象在c o r b a 命名服务中的对象别名。 所以,客户程序只需要知道c o r b a 对象的公共接口,就可以调用对象的方法。c o r b a 还支持运行时对象接口动态定义、通过接口库( j r ) 进行接口选择调用、以及动态调用 接口( d i i ) 。这些特点为程序在运行时访问c o r b a 对象提供了动态配黄能力。 3 ) j a v a 远程方法调用j a v a r l l i 虽然s u n 的j a v a 对于业界来况是相对较新的事物,但是它所支持的半台无关特 性、安全性和面向对象特性却迅速在业界获得了广泛的认同。不同于其他编程语言, n v a 从一丌始就是为一个完整的执行坏境所设计的,所以它能够独立于器种底层平 台为开发者提供一个一致的抽象界面。 j a v a 的平台独立性是由j a v a 虚拟机( j v m ) 来实现的。j v m 能模拟一种虚拟的计算 环境,提供了硬件和各种能运行j a v a 的操作系统之间的结合点。因为虚拟机为j a v a 程序提供了统一的虚拟环境,所以应用级的j a v a 程序可以看作是运行在相同平台上, 他们之间的通信很简单。 j a v a r m i 中制定了一个基于j a v a 语言的体系标准,遵循这个标准,可以很容易地 创建“j a v a j a v a ”的分布式应用程序。在一个纯粹由j a v a 组成的分布式系统中, j a v a 对象在任何时候、任何地点都可以被调用。 相对于c o r b a 而言,j a v a r m i 是一个分布式对象计算的纯j a v a 解决方菜。比如, 在j a v a r m i 中,对象的接口用j a v a 定义,而不是用i d l 。c o r b a 和j a v a r m l 的关键差 别在于语言环境。其次,c o r b a 没有定义安全服务,而j a v a r m i 继承了j 。iv k 的安全 性。再者,c o r b a 有不同的实现,不同的独立软件丌发商的不同实现均有独特性,这 使得在不同平台上的匹配比较困难,而且不是所有c o r b a 产品丌发商都支持所有平 台,丽几乎所有平台都支持j a v a 虚拟机,因此j a v ar m 具有更高的可移舱肚。如果 客户对象和服务对象都基于j a v a 虚拟帆,那么i a v a r t 【是分布对象计算的最好选择。 目i mi i o p 已经提供了j a v a r m i 和c o r g a 的互操作能力,而且两者的发眨仃忆相借 鉴的趋势。 3 分布式多媒体计算 分柿式计算环境和分布式对象计算主要解决的是数据通信、处理及忆操作性问 题,而在高速信息网络技术支持下,分布式计算还应实现对多媒体处理的殳t , 。这就 9 毖_ jj 2 e e 平台的单据亡】动流转系统的殴计与实现 提出了分柿式多媒体计算研究的问题。a n s a 的分椎式交互多媒体结构d i m m a 就是要 解决这一方面的问题。其研究包括:多媒体通信对网络技术的要求;多媒体的处理、 同步、存储、检索:分布式多媒体计算环境对网络支持多媒体功能的映象:分布式多 媒体数据库等。 2 1 3 结论 现代企业的企业信息资源广泛分布在各种网络体系中,企业必须能够处理这些分 布的信息资源,这使得分布式企业应用成为构建企业信息环境的必然需求。同时,因 为市场竞争的r 趋激烈和企业外部环境的多变性,企业也需要分布式计算所提供的灵 活性和可扩展性来保证企业应用的不断成功。随着分布式计算技术的不断发展和逐渐 成熟,分布式系统将在企业等各行业中发挥越来越重要的作用。 2 2 企业应甩体系结构的发展 由于客户机和服务器硬件系统平台及网络技术的价格不断下降,企业应用体系结 构已经经历了巨大的发展:第一代企业应用是集中式的大型机应用;在2 0 世纪8 0 年代后期和9 0 年代早期,几乎所有掰的企业应用采纳二层体系结构:后来企业应用 体系结构发展到三层结构;然后是到基于w e b 的体系结构;目前,发展到j 2 e e 应用 体系结构。 2 2 1 二层应用体系结构 一个二层应用体系结构,业务应用作为一组操作系统层面的应用进程来构成,这 些进程运行在客户机上。这个客户机通常是企业内的p c 机。每一个这样的应用实现 了一个或几个业务过程,以及代表用户与业务过程之间交互的g u i ( 图形用户界 面) ( 个业务过程是一个用户与一些企业信息交互的封装) 。这个运行在客户p c 机上 的应用通过网络与存储企业数据库的数据库服务器通信,客户端应用发出数据资源访 问请求,服务器端将结果返回客户端。这个数据库服务器存储企业数据,而客户应用 通常借助s o l 语句存取这些数据。二层体系结构的示意图如2 - 3 所示。 笤户乱戤并描 鞯 剀型 图2 - 3 二层应用体系结构 0 i 锕l ( 航。f 航凡人。娜1 :0 :似沦文 j 层麻用体系纬构适合于w e bm 现之简的火多极晦h j 。它的_ 苣要好处是 醍容踢,r 发层应用,特别是因为呈现逻辑与j 务逻辑驻尉在同一个进程中,丌发者不必处理 分佰式应用的复杂关系。 但足,二层体系结 : = 的坷i 利之处要比好处更多。二层体系结构的主要不利之处是 其业务逻辑没有从呈现逻辑中分离丌来。程序员不能在二层结构的应用中清楚地将业 务逻辑从呈现逻辑中分隔出束。这就导致一系列问题: 1 ) 容易危及数据库的完整性。因为饵一个客户程序嵌入业务逻辑,而这个客户 程序中一个错误或一个b u g 就会很容易地危及企业数据库的完整性。 2 ) 在大型企业中难以管理。在这个体系结构中,应川部署在客户机上,企业的- i t 部门必须维护这些应用。如果一个业务过程改变了,那么i t 部门必须用这 个应用的新版本替换所有的老版本。这对于一个具有几万台p c 机的企业来 兑 是一个艰巨的任务,尤其是当有着许多膝上型机器时。 3 ) 难以维护代码。二层体系结构并不支持模块化程序设计,这使得应用程序的 代码难以维护。对于更大的组织柬说,维护的困难也呈指数级增长,因为大 型企业通常使用更多的程序员来编程并维护这些应用。 4 ) 其应用容易受到安全侵害。一个富有技巧的程序员也许会侵害安装在p c 机上 的应用,修改这个应用实现的业务过程。 5 ) 其伸缩性的局限,难以应付大数目的用户。每一个运行的应用通常需要连接 到企业数据库。打开的连接数通常受到数据库服务器性能的限制,所有的用 户就不能在同一时间运行这个应用。 6 ) 需要一个同构的客户体系结构。在5 a 一a 语言出现之前,二层体系结构通常需 要客户机是同构的。例如,通常需要所有的客户机是运行相同类型操作系统 的p c 机。 7 ) 将个应用绑定于一种特定的呈现类型。因为同一个应用不仅实现了业务过 程,而且实现了呈现逻辑,因此不太可能使用不同的呈现类型来重用业务逻 辑的实现,例如一个浏览器或者智能蜂窝电话。 8 ) 网络负载过重。当整个应用程序都在台p c 机上处理时,应用程序必须在向 用户显示任何信息之倒都必须要进行多次数据请求。这些数据库请求对网络 系统造成了严重的负担。 由于二层体系结构的 二述局限性,应用丌发者和他们的客户不得不寻求另种应 用体系结构。 2 2 2 三层应用体系结构 随着分柿式对象技术的逐渐成熟,三层分f i 式应用体系结构得到了越来越多的应 用。三层应用体系结构解决了二层结构中存征的些问题。 i i j llj 2 f e 甲矗一j t - 捌n 动瀛l 泵统f 【 j 改“o 啦腿 在一i 层架构f 。j 监j h 可以分艄稿j 小h 的系统、i ,台h 通过分巾式技术。实观抖构平 台问肘象的相互通信。三层体系结构中的应用程净在逻辑上被分解成三个不同的层, 符层都有一组定义好的接口:第一层一般出一个图形用户界丽或者类似的事物绢成, 称为表示层( p r e s e n t a l i o nl a y e r ) ;| j 川层也称为业务层( b u s i n e s sl a y e r ) ,由应用 服务程序或学业务逻辑构成:第三层即数据层( d a t ai , a y e r ) ,包含着应用程序需要的 各种数掘。 中阃层( 应用程序逻辑) 实际上就是用户为检索自己所需的数据而调用的代码( 通 过表示层) 。然后,表示层接收到数据并且进行格式处理以便显示出柬。这种应用程 序逻辑e 的分隔在用户界面基础上提供了很大的应用程序设计灵活性。这样不需要更 改应用程序逻辑就可以建立和实施多种用户界面,只要此应用程序逻辑是一个清楚定 义的表示层接口即可,从而使丌发人员可以专注于应用系统核心业务逻辑的分析、设 计和丌发,简化了企业系统的开发、更新和升级工作,极大增强了企业应用的伸缩性 和灵活性。 第三层包含的是应用程序需要的数据,这些数据可以包含任何信息源,其中包括 像c r r a c l e 或者s y b a s e 这样的数据库、一组x m l 文档甚至是像l d a p 服务器这样的目 录服务。除了传统的关系型数掘库存储机制之外,应用程序可以访问多种不同的企业 数据源。 1 传统的三层体系结构 传统的三层体系结构如下图2 - 4 所示,将呈现逻辑部署在客户p c 机上,业务逻 辑放置在服务器端,没有利用w e b 技术。客户p c 机和中削层服务器之间的交互采用 的是应用程序私有的协议。 客户计算机( p c 机)中间层服务器数据库服务器 图2 - 4 传统的三层应用体系结构 中阳j 层服务器通过重用那些跨越多个客户的昂贵资源束改进可伸缩性,例如数据 阵连接。可伸缩性的改进带来了性能的改进。这个体系结构【! 土改进了安全与应用管理。 这样的二三层体系结构已经使用在大多数的企业资源规划( e r p ) 系统和大容量事务处理 的特殊系统中, 虽然这种三层体系结掏消除了二层体系结陶中的一蝗缺陷,但它也有不足之处: 1 ) 复杂性。丌发一个这样的三层应用比丌发个= 层应用更复杂。例如,程序 员必须处理分卸、多线程、安全等事项。分布式应用引入了实质性的,r 发者 1 2 m j x 航空航犬人+ 倾i “引论文 必须处理的系统级程序设计复杂中l 。另外,分俞式应用需要客户l | 部| j 柬补 偿应用部并与管理支撑的缺乏。为了降低分前i 式应用的复杂性,供应商借助 于应用服务器的使用来解决问题,例如事务处理( t p ) 监视器。应用服务器的 用意在f 将程序员从处理这些复杂关系中解脱出来。、 2 ) 应用缺乏可移植性。因为适用于三层平台的应用服务器的各个提供商在他的 产品中使用不同的应用编程接口,因此独立软件提供商( i s v ) 就不可能写比那 监能够邝署在由其他提供商提供的应用服务器的应用程序。 3 ) 提供商的不兼容性。难以集成来自不同提供商的应用,因为各个提供商使用 一组不i , t j 的协议,而在这些 办泌之1 日j 没有标准的互操作性。 4 ) 采用的有限性i s v 并没有热情去为多个尚未被广泛采用的框架写应用陧序。 虽然有一些工具支持分布式应用,这些工具只能在它们被开发时所面向的框 架上工作。许多工具不能跨越大多数框架。其结果是,只有对一组相容的工 具的有限的支持。同样,程序员对于工具和框架的知识也是很有限的。 5 ) 与w e b 的不兼容性。这个传统的三层体系结构不能直接与w e b 一起工作。这 个三层体系结构对于客户与运行在服务器上的应用之间的通信使用一个专用 的协议,而这个协议不能与w e b 一起工作。虽然许多应用框架提供商在他们 前端产品上增加了对w e b 客户的支持,但是其结果依然受制于上述列出的缺 陷。 2 早期的基于w e b 的应用体系结构 w e b 的引入与成长改变了切。因为二层和传统的三层体系结构都不支持w e b 应 用的丌发,因此早期的w e b 应用开发者不得不想出一个新的途径。他们使用各式各样 的w e b 服务器插件扩充。这些扩充激活服务器上的程序来从存储在企业数据库中的信 息动态地构造h t 札文档。同样,这种w e b 服务器的扩充也从提交的h t m l 表单中将信 息加入到企业数据库中。其结构如图2 5 所示。 图2 - j 早期基于w e b 的应用体系结构 这种扩充的方法之一是吓i ( c o m m o nf : i t e w a y 【n i e f h c c ) 脚本( c g f 是丌发i i t
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025重庆国隆农业科技产业发展集团有限公司选聘下属子企业领导人员1人笔试历年参考题库附带答案详解
- 2025贵州纳雍源生牧业股份有限公司招聘4人笔试历年参考题库附带答案详解
- 2025贵州毕节市金沙县国有资本投资运营集团有限公司招聘51人笔试历年参考题库附带答案详解
- 2025贵州六枝特区益正开发投资有限责任公司人员招聘4人笔试历年参考题库附带答案详解
- 2025西安华山金属材料科技有限公司校园招聘笔试历年参考题库附带答案详解
- 2025秋季安徽合肥工投工业科技发展有限公司招聘8人笔试历年参考题库附带答案详解
- 2025杭州临安区教育局公开招聘中小学教师76人考前自测高频考点模拟试题及完整答案详解一套
- 2025福建漳龙集团有限公司招聘3人笔试历年参考题库附带答案详解
- 2025河南许昌市消防救援支队招聘政府专职队员50人模拟试卷附答案详解(完整版)
- 2025福建广电网络集团股份有限公司连江分公司招聘笔试历年参考题库附带答案详解
- 《山东省房屋市政施工安全监督要点》及《安全监督“二十要”》2025
- 2025年湖南环境生物职业技术学院单招职业技能考试题库带答案
- 生物安全管理体系文件
- 河道疏浚外运施工方案
- 银行职业介绍课件
- 辽宁省盘锦市大洼区田家学校2024-2025学年九年级上学期第四次质量检测语文试卷
- 广东省惠州市联考2024-2025学年上学期12月教学质量阶段性诊断八年级数学试卷(无答案)
- 工程结算协议书
- 砖砌围墙施工方案
- 2024-2030年中国痘痘贴行业营销动态及消费需求预测研究报告
- 《人工智能导论》(第2版)高职全套教学课件
评论
0/150
提交评论