信息系统开发技术概述_第1页
信息系统开发技术概述_第2页
信息系统开发技术概述_第3页
信息系统开发技术概述_第4页
信息系统开发技术概述_第5页
已阅读5页,还剩86页未读 继续免费阅读

下载本文档

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

文档简介

信息系统开发技术概述同济大学经济与管理学院徐德华博士主要内容1.统一建模语言UML2.COM+组件技术3.CORBA4.EJB与J2EE5..NET平台1.统一建模语言UML1.1UML产生背景面向对象建模语言出现于70年代中期。从1989年到1994年,其数量从不到十种增加到了五十多种。90年代中,一批新方法出现了,其中最引人注目的是Booch1993、OOSE和OMT-2等。Booch是面向对象方法最早的倡导者之一,Booch1993比较适合于系统的设计和构造。Rumbaugh等人提出了面向对象的建模技术(OMT)方法,用对象模型、动态模型、功能模型和用例模型,共同完成对整个系统的建模,所定义的概念和符号可用于软件开发的分析、设计和实现的全过程,软件开发人员不必在开发过程的不同阶段进行概念和符号的转换。OMT-2特别适用于分析和描述以数据为中心的信息系统。Jacobson于1994年提出了OOSE方法,其最大特点是面向用例(Use-Case),并在用例的描述中引入了外部角色的概念。OOSE比较适合支持商业工程和需求分析。统一建模语言(UnifiedModelingLanguage,UML)不仅统一了Booch、Rumbaugh和Jacobson的表示方法,而且对其作了进一步的发展,并最终统一为大众所接受的标准建模语言。“统一建模语言(UML)是一种用于软件系统制品规约的、可视化的构造及建档语言,也可用于业务建模以及其它非软件系统。”UML是一种通用的可视化建模语言,用于对软件进行描述、可视化处理、构造和建立软件系统的文档。UML适用于各种软件开发方法、软件生命周期的各个阶段、各种应用领域以及各种开发工具UML能够描述系统的静态结构和动态行为:静态结构定义了系统中重要对象的属性和操作以及这些对象之间的相互关系;动态行为定义了对象的时间特性和对象为完成目标任务而相互进行通信的机制。UML不是一种程序设计语言,但我们可以用代码生成器将UML模型转换为多种程序设计语言代码,或使用反向生成器工具将程序源代码转换为UML模型。1.2UML语言概述1.2.1UML语言的特征不是一种可视化的程序设计语言,而是一种可视化的建模语言;是一种建模语言规格说明,是面向对象分析与设计的一种标准表示;不是过程,也不是方法,但允许任何一种过程和方法使用它。1.2.2UML语言的目标易于使用,表达能力强,进行可视化建模;与具体的实现无关,可应用于任何语言平台和工具平台;与具体的过程无关,可应用于任何软件开发过程;简单并且可扩展,具有扩展和专有化机制;强调在软件开发中,对架构、框架、模式和组件的重用;与最好的软件工程实践经验集成;可升级,具有广阔的适用性和可用性;有利于面向对象工具的市场增长。1.2.3UML组成由视图view,图diagram,模型元素modelelement和通用机制generalmechanism等几个部分组成。视图是表达系统的某一方面特征的UML建模元素的子集,由多个图构成,是系统的抽象表示;图是模型元素集的图形表示;模型元素代表面向对象中的类、对象、消息和关系等概念,是构成图的最基本的常用概念。通用机制用于表示其它信息,比如注释、模型元素的语义等。。1.3UML语义义UML语义义描述述基于于UML的的精确确元模模型((MetaModel)定定义。。元模模型为为UML的的所有有元素素在语语法和和语义义上提提供了了简单单、一一致、、通用用的定定义性性说明明,使使开发发者能能在语语义上上取得得一致致,消消除了了因人人而异异的最最佳表表达方方法所所造成成的影影响。。此外外UML还还支持持对元元模型型的扩扩展定定义。。1.4UML表示示法UML表示示法定定义UML符号号的表表示法法,为为开发发者或或开发发工具具使用用这些些图形形符号号和文文本语语法为为系统统建模模提供供了标标准。。这些些图形形符号号和文文字所所表达达的是是应用用级的的模型型,在在语义义上它它是UML元模模型的的实例例。统一建建模语语言UML的重重要内内容可可以由由五类类图((共9种图图形))来定定义。。用用例图图(UseCasediagram))用例视视图是是被称称为参参与者者的外外部用用户所所能观观察到到的系系统功功能的的模型型图。。用例例是外外部可可见的的一个个系统统功能能单元元,这这些功功能由由系统统单元元所提提供,,并通通过一一系列列系统统单元元与一一个或或多个个参与与者之之间交交换的的消息息所表表达。。用例也也可以以有不不同的的层次次。用用例可可以用用其他他更简简单的的用例例进行行说明明。在在交互互视图图中,,用例例作为为交互互图中中的一一次协协作来来实现现。静静态图图(Staticdiagram))静态图图对应应用领领域中中的概概念以以及与与系统统实现现有关关的内内部概概念建建模,,包括括类图图、对对象图图和包包图。。类图描描述系系统中中类的的静态态结构构。对象图图是类类图的的实例例,几几乎使使用与与类图图完全全相同同的标标识。。他们们的不不同点点在于于对象象图显显示类类的多多个对对象实实例,,而不不是实实际的的类。。包图由由包或或类组组成,,表示示包与与包之之间的的关系系。包包是操操作模模型内内容、、存取取控制制和配配置控控制的的基本本单元元。行行为图图(Behaviordiagram))行为图图包括括状态态图和和活动动图,,描述述系统统的动动态模模型和和组成成对象象间的的交互互关系系。状态图图描述述类的的对象象所有有可能能的状状态以以及事事件发发生时时状态态的转转移条条件。。状态态图可可用于于描述述用户户接口口、设设备控控制器器和其其他具具有反反馈的的子系系统。。活动图图描述述满足足用例例要求求所要要进行行的活活动以以及活活动间间的约约束关关系,,有利利于识识别并并行活活动。。活动动图有有助于于理解解系统统高层层活动动的执执行行行为,,而不不涉及及建立立协作作图所所必须须的消消息传传送细细节。。交交互图图(Interactivediagram)交互图图描述述了执执行系系统功功能的的各个个角色色之间间相互互传递递消息息的顺顺序关关系,,包括括顺序序图和和合作作图。。顺序图图显示示对象象之间间的动动态合合作关关系,,它强强调对对象之之间传传送消消息的的时间间顺序序,同同时显显示对对象之之间的的交互互关系系。顺顺序图图可以以用来来进行行一个个场景景说明明,即即一个个事务务的历历史过过程。。协作图图描述述对象象间的的协作作关系系,协协作图图跟顺顺序图图相似似,显显示对对象间间的动动态合合作关关系,,但它它们的的侧重重点不不同。。实实现图图(Implementationdiagram))实现图图包括括构件件图和和配置置图,,显示示系统统实现现时的的一些些特性性,包包括源源代码码的静静态结结构和和运行行时刻刻的实实现结结构。。构件图图描述述代码码部件件的物物理结结构及及各部部件之之间的的依赖赖关系系,有有助于于分析析和理理解部部件之之间的的相互互影响响程度度。配置图图定义义系统统硬件件的物物理拓拓扑结结构以以及在在此结结构上上执行行的软软件。。它可可以显显示计计算结结点的的拓扑扑结构构和通通信路路径、、结点点上运运行的的软件件构件件、软软件构构件包包含的的逻辑辑单元元(对对象、、类)等。。1.5UML的应应用领领域UML的目目标是是以面面向对对象图图的方方式来来描述述任何何类型型的系系统,,具有有很宽宽的应应用领领域。。其中中最常常用的的是建建立软软件系系统的的模型型,但但它同同样可可以用用于描描述非非软件件领域域的系系统,,如机机械系系统、、企业业机构构或业业务过过程,,以及及处理理复杂杂数据据的信信息系系统、、具有有实时时要求求的工工业系系统或或工业业过程程等。。总之,,UML是是一个个通用用的标标准建建模语语言,,可以以对任任何具具有静静态结结构和和动态态行为为的系系统进进行建建模。。此外外,UML适用用于系系统开开发过过程中中从需需求规规格描描述到到系统统完成成后测测试的的不同同阶段段。2.COM+组组件技技术所谓组组件,,其实实就是是一种种可部部署软软件的的代码码包,,其中中包括括某些些可执执行模模块。。组件件单独独开发发并作作为软软件单单元使使用,,它具具有明明确的的接口口,软软件就就是通通过这这些接接口调调用组组件所所能提提供的的服务务,多多种组组件可可以联联合起起来构构成更更大型型的组组件乃乃至直直接建建立整整个系系统。。实现组组件并并不一一定需需要采采用面面向对对象语语言。。支持持组件件的技技术包包括COM+、、CORBA和和EJB等等。2.1COM的产产生Microsoft出品品了COM(ComponentObjectModel)),COM仅仅仅只是是一个个规范范。不不管组组件用用什么么语言言写成成,只只要符符合这这个COM规范范,就就能被被用任任何一一种语语言写写成的的客户户程序序调用用。Microsoft推出出Windows98和Windows2000后后,整整个操操作系系统的的核心心都围围绕着着COM来来建立立。我我们可可以把把Windows系系统看看作是是一系系列的的COM接接口,,在需需要是是可以以调用用这些些接口口。COM服务务程序序有三三种形形式::第一种种是驻驻留在在本地地机器器上以以DLL形形式提提供,,该服服务程程序被被调用用时,,嵌入入到调调用程程序的的线程程中运运行,,是最最常用用的形形式;;第二种种是驻驻留在在本地地机器器上以以EXE形形式提提供,,该服服务程程序被被调用用时将将占用用独立立的线线程运运行;;第三种种驻留留在远远端机机器上上以EXE形式式提供供,服服务程程序通通过网网络被被调用用,它它在远远端机机器上上运行行,结结果通通过网网络返返回调调用者者。COM的缺缺点就就是大大家常常常提提到的的“DLL地狱狱”。。这个个问题题在一一个DLL要被被一个个新版版本的的DLL所所取代代时引引发。。开发发者不不得不不通过过关闭闭所有有的客客户应应用程程序的的方法法来达达到清清除所所用对对这个个组件件的引引用的的目的的。有有时所所有的的方法法都还还起不不了作作用,,那你你只好好重新新启动动服务务器后后才能能替换换掉老老的DLL。2.2DCOM即DistributedCOM,,与COM的不不同点点:COM有两两种存存在形形式((DLL、、EXE)),但但DCOM必须须是可可执行行程序序,因因为DCOM不不可能能在客客户程程序的的内存存空间间运行行,所所以不不能是是动态态连接接库。。COM(DLL形式式)可可以不不用RPC通信信,而而DCOM必须须使用用RPC远远程调调用。。COM(DLL形式式)与与客户户共同同存在在于同同一内内存空空间,,调用用速度度快。。COM(DLL形式式)的的安全全性不不高,,客户户程序序可以以造成成服务务COM发发生错错误,,DCOM安全全性高高。COM程序序配置置简单单,DCOM配配置较较复杂杂。2.3COM+的的产生生为了让让企业业级的的应用用程序序能使使用上上COM,,它必必需要要有以以下的的特定定的能能力。。验证能能力对象池池(ObjectPooling))事务处处理支持分分布式式架构构为了使使开发发者不不必去去为他他们的的组件件添加加这些些能力力,微微软公公司出出品了了DCOM和MTS(MicrosoftTransactionServer,,微软软事务务服务务器))。MTS允许许相关关的作作业单单元被被当作作一个个事务务来对对待,,这意意味着着如果果所有有的作作业单单元被被成功功地完完成,,整个个事务务就被被当作作成功功地完完成,,反之之如果果有一一个单单元未未成功功完成成,整整个事事务将将被重重新轮轮回。。在客户户请求求对象象和释释放对对象后后,MTS仍保保存着着这个个对象象,所所以当当另一一个客客户请请求同同一个个组件件的时时候,,MTS就就将保保存着着的对对象交交给它它。通通过这这种方方式,,MTS减减少了了在服服务器器源实实例化化的次次数。。MTS针对对企业业应用用和Web应用用的特特点,,在COM/DCOM的的基础础上又又添加加了许许多功功能和和特性性,包包括事事务特特性、、安全全模型型、管管理和和配置置等,,MTS使使COM成成为一一个完完整的的组件件体系系结构构。COM+并并不是是COM的的新版版本,,我们们可以以把它它理解解为COM的新新发展展,COM+的的底层层结构构仍然然以COM为基基础。。可以以认为为COM+是COM、DCOM和和MTS的的集成成。但但更重重要的的一点点是,,COM+倡导导了一一种新新的概概念,,它把把COM组组件软软件提提升到到应用用层而而不再再是底底层的的软件件结构构,它它通过过操作作系统统的各各种支支持,,使组组件对对象模模型建建立在在应用用层上上,把把所有有组件件的底底层细细节留留给操操作系系统,,因此此,COM+与与操作作系统统的结结合更更加紧紧密。。2.4COM+基基本结结构COM+不不再局局限于于COM的的组件件技术术,它它更加加注重重于分分布式式网络络应用用的设设计和和实现现,已已经成成为Microsoft系统统平台台策略略和软软件发发展策策略的的一部部分。。2.4.1WindowsDNA策略略WindowsDNA(DistributedinterNetApplicationArchitecture)是是Microsoft多多年积积累下下来的的技术术精华华集合合起来来而形形成一一个完完整的的、多多层结结构的的企业业应用用总体体方案案,它它使Windows真正正成为为企业业应用用平台台。(a)三三层结结构技技术组组成模模型(b)WindowsDNA结结构2.4.2COM+基基本结结构从COM的的发展展角度度来看看,COM最初初作为为桌面面操作作系统统平台台上的的组件件技术术,主主要为为OLE服服务。。但是是随着着WindowsNT与DCOM的的发布布,COM通过过底层层的远远程支支持使使组件件技术术延伸伸到了了分布布式应应用领领域,,充分分体现现了COM的扩扩展能能力以以及组组件结结构模模型的的优势势。MTS为COM增添添了许许多新新的内内容,,弥补补了COM和DCOM的的一些些不足足,它它注重重于服服务器器一端端的组组件管管理和和配置置环境境。COM+进进一步步把COM、DCOM和和MTS统统一起起来,,形成成真正正适合合于企企业应应用的的组件件技术术。COM+组组成结结构图图COM+不不仅继继承了了COM、、DCOM和MTS的许许多特特性,,同时时也新新增了了一些些服务务,比比如负负载平平衡、、内存存数据据库、、事件件模型型、队队列服服务等等。COM和MTS把组组件的的所有有配置置信息息都保保存在在Windows的的系统统注册册表中中,然然而,,COM+把大大多数数的组组件信信息保保存在在一个个新的的数据据库中中,称称为COM+目目录(COM+Catalog)。。COM+目录录把COM和MTS的注注册模模型统统一起起来,,并提提供了了一个个专门门针对对组件件的管管理环环境。。2.5COM+新增增系统服服务介绍绍COM+的系统统服务充充分体现现了COM+的的特征,,通过这这些系统统服务,,我们可可以很容容易地开开发出多多层结构构的应用用系统,,因为这这些系统统服务本本身已经经满足了了多层应应用的一一些基本本要求。。COM+的系统统服务有有的是新新增加的的,包括括队列组组件、负负载平衡衡、内存存数据库库和事件件服务。。有的从从MTS继承过过来并增增强了的的,包括括事务、、对象池池、安全全模型以以及管理理特性。。2.5.1COM+队列组组件COM+除了支支持这种种基于RPC连连接的运运行方式式,它还还支持另另一种运运行模式式,基于于消息的的通讯过过程,它它可以有有效地把把客户与与组件的的生存期期分离开开。这种种模式通通过COM+的的队列组组件服务务实现。。队列组件件并没有有使用直直接的RPC连连接,而而是采用用了底层层的消息息系统MSMQ(MicrosoftMessageQueueServer)。。客户程程序不再再直接调调用组件件对象,,它利用用消息机机制与组组件对象象进行通通讯,即即使组件件对象并并没有运运行,客客户程序序仍然可可以执行行操作。。2.5.2COM+事件模模型COM+事件模模型用中中心服务务和中心心管理的的方式把把发布者者与订阅阅者之间间的依赖赖关系分分离开,,它用事事件类作作为发布布者和订订阅者之之间的中中间对象象,发布布者必须须通过事事件类发发布信息息。事件件类是由由COM+事件件服务提提供的对对象,它它实现了了事件接接口。当当发布者者要激发发事件时时,它创创建一个个事件类类对象,,调用相相应的事事件方法法,然后后释放对对象的接接口。COM+事件服服务会决决定如何何通知订订阅者,,决定什什么时候候通知订订阅者。。如同队队列组件件情形一一样,发发布者和和订阅者者的生存存时间可可以被分分离。负负载平衡衡为了使组组件支持持负载平平衡,必必须定义义一个应应用群集集(applicationcluster),应用用群集是是指一组组已经安安装了服服务器端端组件的的机器,,然后把把一台机机器配置置成负载载平衡路路由器(router)。COM+负载平平衡以NT系统统服务的的形式运运行在路路由器机机器上,,当路由由器的SCM(ServiceControlManager)接收到到远程创创建对象象请求时时,它把把请求传传递到负负载最轻轻的机器器上。一一旦对象象已经被被成功创创建,那那么客户户与对象象之间的的连接是是直接进进行的,,而不必必再通过过路由器器。内内存数据据库(IMDB)COM+的内存存数据库库(InMemoryDatabase)服服务用于于保存应应用的非非永久状状态信息息。IMDB是是一个驻驻留在内内存中的的支持事事务特性性的数据据库系统统,它可可以为COM+应用程程序提供供快速的的数据访访问。由于IMDB是是内存中中的数据据库,所所以IMDB只只对本机机器上的的COM+组件件有效,,不支持持分布式式概念,,并且多多个IMDB机机器不能能装入同同一个数数据表。。2.5.3COM+对象象池对象池是是指把对对象的实实例保留留在内存存中,以以便当客客户请求求创建对对象时可可以马上上用到这这些对象象。对象象池如同同IMDB一样样,完全全是出于于效率考考虑的原原因,用用来建立立大型的的应用系系统。2.6COM+的主主要特性性真正的异异步通讯讯。客户户和组件件有可能能在不同同的时间间点上协协同工作作。事件服务务。可伸缩性性。动态态负载平平衡以及及内存数数据库、、对象池池等系统统服务都都为COM+的的可伸缩缩性提供供了技术术基础。。继承并发发展了MTS的的特性。。可管理和和可配置置性。易于开发发。COM+开开发模型型比以前前的COM组件件开发更更为简化化。3.CORBA3.1对对象管管理集团团(OMG)OMG((ObjectManagementGroup))成立于于1989年,,作为一一个非营营利性组组织,致致力于开开发在技技术上具具有先进进性、在在商业上上具有可可行性并并且独立立于厂商商的软件件互联规规范,推推广面向向对象模模型技术术,增强强软件的的可移植植性、可可重用性性和互操操作性。。OMG于于1990年年末提出出了一个个对象管管理结构构的基准准结构OMA(ObjectManagementArchitecture)。。OMA主要涉涉及用于于面向对对象语言言、系统统、数据据库及应应用程序序框架的的统一术术语体系系,面向向对象软软件系统统的抽象象框架和和基于面面向对象象技术的的分布式式软件系系统参考考模型等等。OMG于于1991年年末提出出的公共共对象请请求代理理程序体体系结构构CORBA(CommonObjectRequestBrokerArchitecture),是是OMA参考模模型中的的ORB接口技技术规范范。这一一标准规规定了如如何定义义、创建建、调度度、引用用对象,,以及对对象之间间如何通通讯。3.2CORBA规规范基本本内容CORBA是一一个规范范(Specification))而不是是程序实实现(Implementation),,提供了了一个允允许在分分布式和和异构型型环境中中应用程程序之间间进行互互操作的的框架。。CORBA规规范的基基本组成成如下图图所示。。对对象请求求代理ORBORB(ObjectRequestBroker)是是CORBA的的核心,,在CORBA中,所所有的通通讯都通通过ORB进行行。ORB作作为一个个“软件件总线””来连接接网络上上的不同同对象,,提供对对象的定定位和方方法调用用,它是是CORBA实实现的关关键。其其主要功功能是定定位服务务对象,,分析客客户对象象的请求求,获取取服务对对象的功功能接口口,在客客户与服服务对象象间建立立通信连连接。客户对象象完全可可以不关关心服务务器对象象的位置置、实现现它所采采用的具具体技术术和工作作的硬件件平台。。接接口定义义语言IDLIDL((InterfaceDefinitionLanguage))是用于于描述对对象接口口的一种种高级符符号语言言。IDL不涉涉及任何何接口的的实现细细节,所所有COBRA系统都都根据IDL用用某种特特定语言言来实现现接口。。IDL是是独立于于其他编编程语言言的功能能描述性性语言。。利用IDL,,完成CORBA服务务对象方方法的说说明,然然后利用用语言映映射工具具,将用用IDL定义的的CORBA对对象方法法说明翻翻译成高高级编程程语言的的接口说说明。IDL描描述通常常以接口口库的方方式进行行存贮。。接接口库CORBA引入入接口仓仓库(InterfaceRepository)的的目的在在于使服服务对象象能够提提供持久久的对象象服务。。将接口口信息存存入接口口仓库后后,如果果客户端端应用提提交动态态调用请请求(DynamicInvocation)),ORB可以以根据接接口仓库库中的接接口信息息及分布布环境下下数据对对象的描描述,获获取请求求调用所所需的信信息。接接口信息息包括了了所有描描述服务务对象属属性、操操作、自自定义数数据类型型及异常常处理的的IDL定义。。基基本对象象适配器器BOABOA((BasicObjectAdapter))是为服服务对象象端管理理对象引引用和实实现而引引入的。。CORBA规规范中要要求系统统实现时时必须有有一种对对象适配配器。对对象适配配器完成成如下功功能:生成并解解释对象象的引用用,把客客户端的的对象引引用映射射到服务务对象的的功能中中;激活或撤撤消对象象的实现现;注册服务务功能的的实现;;确保对象象引用的的安全性性;完成对服服务对象象方法的的调用。。作为CORBA设计中中常用的的对象适适配器———基本本对象适适配器BOA,,在分布布式应用用程序设设计中是是必要的的元素。。ORB将服务务请求的的参数及及操作控控制权传传递给BOA,,由BOA将执执行结果果返回给给ORB。BOA用服服务对象象骨架((Skeleton))将ORB和对对象实现现中的方方法联系系在一起起,服务务对象骨骨架中相相应的方方法将对对BOA方法的的请求调调用映射射为服务务对象中中的方法法。静静态请求求接口SIISII((StaticInvocationInterface)假设设在编译译时刻客客户对象象能够明明确了解解服务对对象的接接口,即即客户与与服务器器之间的的关系应应当是可可知的、、固定的的,服务务接口的的任何改改变都会会导致软软件系统统的重新新编译。。SII是是由IDL描述述的。动动态请求求接口DIIDII((DynamicInvocationInterface)允允许在客客户端动动态创建建和调用用对服务务对象的的请求。。一个请请求包括括对象引引用、操操作和参参数列表表。与新新服务对对象及其其行为相相关的信信息可以以通过接接口库获获得,客客户程序序根据这这些信息息可以在在运行时时刻动态态构造请请求。客户对象象的句柄柄(Stub)和服务务对象的的Skeleton是IDL与对象象实现语语言之间间的桥梁梁。客户对象象的Stub是是IDL定义的的方法接接口经IDL编编译器编编译后,,在编写写客户对对象时,,高级编编程语言言可应用用的用于于识别服服务对象象方法的的代码,,提供服服务对象象接口的的简要说说明。服服务对象象的骨架架是IDL定义义的方法法接口经经IDL编译器器编译后后,形成成的说明明服务对对象提供供方法的的框架。。对于服服务对象象接口中中的每个个方法,,必须在在服务对对象程序序中实现现。3.3服服务请请求的实实现方式式CORBA的底底层结构构是基于于面向对对象模型型的,由由IDL、ORB和IIOP标准协协议(InternetInter-ORBProtocol,,也称网网络ORB交换换协议))3个关关键模块块组成。。IDL使使得所有有CORBA对对象以以一种方方式被描描述,仅仅仅需要要一个由由本地语语言(C/C++、COOBOL或或Java)到到IDL的“桥桥梁”。。CORBA对对象的互互通信要要以ORB为中中介,这这种互通通信可以以在多种种流行通通信协议议(如TCP/IP或或IPX/SPX)之之上实现现。在TCP/IP上上,来自自于不同同开发商商的ORB用IIOP标准协协议进行行通讯。。关于对象象请求的的实现方方式,CORBA规范范中定义义客户程程序可以以用动态态调用接接口DII方式式或通过过IDL文件经经编译后后在客户户端生成成的Stub方方式提出出服务请请求。在提出请请求时,,客户可可以使用用动态调调用接口口或者IDL句句柄。客户将需需要完成成的工作作交给ORB,,由ORB决定定由哪一一个对象象实例完完成这个个请求,,然后激激活这个个对象,,将完成成请求所所需要的的参数传传送给这这个激活活的对象象。对象的接接口有两两种定义义方式,,可以使使用IDL进行行静态定定义,这这种语言言根据进进行的操操作和传传送的参参数定义义对象。。另一种种方法,,可以将将接口加加入接口口库服务务中,允允许在运运行时对对这些成成为组件件的接口口进行访访问,这这两种方方法是等等效的。。对象实现现通过IDL产产生的框框架或通通过动态态框架接接收到调调用请求求,在处处理这些些请求时时,对象象实现可可以调用用对象适适配器和和ORB。3.4基基于CORBA应用用的优点点CORBA是开开放式的的、独立立于厂商商、用于于网络上上计算机机应用的的底层结结构。任任何厂家家、计算算机、操操作系统统、编程程语言及及网络环环境下的的基于CORBA的应应用均使使用IIOP标标准协议议,所以以任何基基于CORBA的应用用均能协协同工作作。CORBA对象象可以用用任何一一种CORBA软件开开发商所所支持的的语言来来编写,,也可以以运行在在任何一一种CORBA软件开开发商所所支持的的平台上上。CORBA是在在不同平平台、不不同语言言之间实实现对象象通信的的模型,,它为分分布式应应用环境境下对象象资源共共享、代代码重用用、可移移植和对对象间相相互访问问建立了了通用标标准,同同样也为为在大量量硬件、、软件之之间实现现互操作作提供了了良好的的解决方方案。与传统的的DCOM相比比,CORBA体系结结构独立立于语言言、独立立于工作作平台等等方面的的特点,,使得基基于CORBA开发的的应用系系统在网网络实现现中具有有更大的的优势。。4.EJB与J2EE4.1发发展历历史在JDK(JavaDevelopmentKit)1.0版的的框架,,Java开开发是以以Applet和和Application应用程程序作为为中心的的。Servlet在许许多方面面与Applet相似似,它是是专门为为在Web服服务器器机器上上运行而而设计的的Java程程序,,Servlet是由由容器管管理的Web组组件,可可产生动动态内容容。JavaServlet的的出现现,为应应用程序序员使用用Java来创创建Web应用用程序开开辟了新新的途径径。但是是,仅有有Servlet还不不能为真真正的企企业计算算提供完完整的模模型。JavaServlet与与CGI程程序一一样,最最适合充充当连接接前端Web请求求与后端端数据资资源的中中间层组组件。JavaBeans规规范将组组件软件件的概念念引入到到Java编程程的领域域。JavaBeans规范范为Java开开发人员员提供了了一种““组件化化”其Java类类的方法法。Bean是是一些Java类,可可在一个个可视的的构建器器工具中中操作它它们,并并且可以以将它们们一起编编写到应应用程序序中。任任何具有有某种特特性和事事件接口口约定的的Java类都都可以是是一个Bean。EJB(EnterpriseJavaBeans)规范范的第一版版以初稿形形式于1997年12月公布布,并于1998年年3月作为为1.0版发行行。EJB体系结构构的目标是是:EJB体系系结构将是是标准的组组件体系结结构,用于于以Java编编程语言构构建分布式式的面向对对象的商务务应用程序序。EJB体系系结构将使使编写应用用程序变得得容易。EJB应用用程序将遵遵循Java编程语语言的“一一次编写,,随处运行行”的原则则。EJB体系系结构将处处理企业应应用程序生生命周期中中的开发、、部署和运运行等方面面。EJB体系系结构将定定义一些约约定,这些些约定使多多个供应商商提供的工工具能够开开发并部署署可在运行行时互操作作的组件。。EJB体系系结构将与与现有的服服务器平台台兼容。供供应商将能能够扩展它它们的现有有产品,以以支持EJB组件。。EJB体系系结构将与与Java编程程语言编写写的其他API兼兼容。EJB体系系结构将提提供EJB组件件和非Java编编程语言言应用程序序之间的互互操作性。。EJB体系系结构将与与CORBA兼兼容。J2EE((Java2Platform,,EnterpriseEdition)为为EJB技术提供供了工作环环境。事实实上,Sun把若若干项软件件技术都设设想为这样样的构件块块,它们将将使大型企企业能够把把以任务为为关键的业业务系统移移植到Java环境境中,而EJB技技术不过是是这些技术术之一。EJB技技术并不是是一项独立立的技术,,它建立在在其他Java技术之之上,这些些技术由Sun和和其他IT公公司联合规规定,它们们一起提供供了这个框框架的内容容,该框架架就称为J2EE。J2EE中中包括以以下技术::EnterpriseJavaBeans技技术JavaInterfaceDefinitionLanguage(IDL)JavaMessageService(JMS)APIJavaNamingandDirectoryInterface(JNDI)JavaRemoteMethodInvocation(RMI)和和ObjectSerializationJavaServletAPIJavaTransactionAPI(JTA)JavaTransactionService(JTS)JavaServerPages(JSP)技技术JDBC数数据库访访问API4.2J2EE应应用模型J2EE多多层体系的的思想在很很大程度上上受到了MVC设计计模式的启启发和影响响。所谓MVC,即即Model-View-Controller,它是是一种在复复杂的应用用系统中划划分和界定定各个组件件的职能和和作用范围围的设计模模式。在MVC设计计模式中,,Model即模型型,是处理理核心数据据模型或实实现核心应应用功能的的部分;View即即视图,主主要与用户户界面有关关。MVC设计模式式认为这些些不同的部部分应该尽尽可能地相相互独立,,它们之间间的交互则则由Controller((控制器))协调。为了更好地地控制和管管理这些应应用,支持持各种用户户的业务功功能被连接接到中间层层。J2EE应用模模式定义了了用于以多多层的方式式实现应用用的一种结结构,它避避免了两层层结构的局局限性,并并提供足够够的可伸缩缩性、可接接入性和可可管理性。。4.2.1中间层层在J2EE平台,中中间层业务务功能是由由企业EJB组件实实现。这些些企业Bean让服服务开发者者将精力集集中在业务务逻辑,并并让EJB服务的处处理提供可可靠、可伸伸缩服务的的复杂工作作。4.2.2客户层层J2EE平平台支持几几种类型的的客户端。。许多J2EE服务务被设计成成支持Web浏览器器的客户端端。这些服服务通过动动态生成的的HTML页面和表表格与客户户端进行交交互操作。。更复杂的服服务将直接接与第一层层客户端直直接交换数数据。这里里,JSP和Servlet用于规格格化业务数数据,以方方便J2EE客户端端处理。这这些客户端端既能在一一个Web浏览器以以JavaApplet方方式运行,,也能用以以Java技术为基基础的程序序方式运行行。4.2.3企业信信息系统EIS一个服务的的中间层的的业务模块块必须存取取和更新在在企业应用用系统EIS层的信信息。下列列标准是Java服服务的API,它们们提供了对对企业信息息系统的基基本存取功功能:JDBC,,用于存取取数据的Java标标准API;JNDI(JavaNamingandDirectoryInterface),用于从从企业的名名字和目录录服务存取取信息的标标准API;JMS(JavaMessageService),通过消消息中间件件发送和接接收信息的的标准API;JavaMail,,发送电子子邮件的标标准API;JavaIDL,调调用CORBA服务务的标准API。4.3J2EE中中间件的体体系结构4.3.1J2EE总体结结构J2EE应应用服务器器由四个部部分组成::Applet容器器、应用客客户端容器器、Web容器和EJB容器器,它们之之间的关系系由下图表表示。容器是应用用服务器的的运行环境境,J2EE为容器器中的应用用组件提供供服务。应用客户端端容器通过过用于连接接数据库系系统的JavaAPI、JDBCAPI与与应用服务务器要求的的数据库相相连接。包包含有JSP和Servlet的Web容器和和EJB容容器也使用用同样的接接口与数据据库相连接接。J2EE应应用服务器器为应用组组件的部署署、管理和和执行提供供了支持。。根据对应应用服务器器的依赖程程度,应用用组件可以以被分成3种类型::在应用服务务器中被部部署、管理理和执行的的组件,这这样的组件件有Web组件和EJB组件件。在应用服务务器中被部部署、管理理,但是被被下载到一一个客户端端系统上去去执行的组组件。不完全按照照应用服务务器的要求求被部署和和管理的组组件,应用用客户端就就是这样的的组件。4.3.2J2EE应用服服务器体系系结构浏览器Servletor

JSP容器EJBServerBCHTTPEntity

BeanHOMEREMOTESession

BeanHOMEREMOTE数据J2EE模模型A数据JDBCRMI/IIOPJDBC应用服务器器4.4J2EE应应用组件J2EE应应用组件是是指在应用用服务器中中运行的软软件组件,,主要有JSP、EJB和Servlet三种种。4.4.1JSPJSP提供供了一种在在网页中嵌嵌入组件的的方式,并并且允许生生成相应的的网页最终终发送给客客户。JSP网页可可以包含HTML、、Java代码及JavaBeans组件。JSP网页页实际上是是Servlet编编程模型的的一个扩充充。当用户户请求一个个JSP网网页时,Web容器器会把相应应的JSP网页编译译成一个Servlet。接接着此Web容器调调用这个Servlet,并并且把得到到的内容返返回给Web浏览器器。JSP与ASP技术术非常相似似。两者都都提供在HTML代代码中混合合某种程序序代码、由由语言引擎擎解释执行行程序代码码的能力。。但是,ASP的编程程语言是VBScript之之类的脚本本语言,JSP使用用的是Java,这这是两者最最明显的区区别。此外外,ASP与JSP还有一个个更为本质质的区别::两种语言言引擎用完完全不同的的方式处理理页面中嵌嵌入的程序序代码。在ASP下下,VBScript代码被被ASP引引擎解释执执行;在JSP下,,代码被编编译成Servlet并由Java虚虚拟机执行行。4.4.2ServletServlet是一一个以Java技术术为基础的的Web组组件,它被被一个容器器管理,它它能产生动动态的内容容。Servlet通过Servlet容器实实现的请求求/应答机机制与Web客户端端进行交互互。所有的Servlet容器必必须将HTTP作为为请求和应应答的协议议。一个Servlet可以具有有这样一个个处理流程程:一个客户端端连接到一一个Web服务器,,并发送一一个HTTP请求到到这个Web服务器器。请求被Web服务器器接收并转转交给Servlet容器。。Servlet容容器可以与与Web服服务器在相相同主机或或不同的主主机上运行行。Servlet容器器在其配置置的Servlet中找到调调用的Servlet,然后后用代表请请求和应答答的对象调调用它。Servlet使用用请求对象象找到谁是是远端的用用户,并通通过应答对对象将生成成的数据返返回客户端端。当Servlet完完成了

温馨提示

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

评论

0/150

提交评论