版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
信息系统开发技术概述主要内容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应用模模式定义了用用于以多层的的方式实现应应用的一种结结构,它避免免了两层结构构的局限性,,并提供足够够的可伸缩性性、可接入性性和可管理性性。中中间层在J2EE平平台,中间层层业务功能是是由企业EJB组件实现现。这些企业业Bean让让服务开发者者将精力集中中在业务逻辑辑,并让EJB服务的处处理提供可靠靠、可伸缩服服务的复杂工工作。客客户层J2EE平台台支持几种类类型的客户端端。许多J2EE服务被被设计成支持持Web浏览览器的客户端端。这些服务务通过动态生生成的HTML页面和表表格与客户端端进行交互操操作。更复杂的服务务将直接与第第一层客户端端直接交换数数据。这里,,JSP和Servlet用于规格格化业务数据据,以方便J2EE客户户端处理。这这些客户端既既能在一个Web浏览器器以JavaApplet方式运运行,也能用用以Java技术为基础础的程序方式式运行。企企业信息系系统EIS一个服务的中中间层的业务务模块必须存存取和更新在在企业应用系系统EIS层层的信息。下下列标准是Java服务务的API,,它们提供了了对企业信息息系统的基本本存取功能::JDBC,用用于存取数据据的Java标准API;JNDI(JavaNamingandDirectoryInterface),用于从企企业的名字和和目录服务存存取信息的标标准API;;JMS(JavaMessageService),,通过消息中中间件发送和和接收信息的的标准API;JavaMail,发送送电子邮件的的标准API;JavaIDL,调用CORBA服服务的标准API。4.3J2EE中间件件的体系结构构总总体结构J2EE应用用服务器由四四个部分组成成:Applet容器、、应用客户端端容器、Web容器和EJB容器,,它们之间的的关系由下图图表示。容器是应用服服务器的运行行环境,J2EE为容器器中的应用组组件提供服务务。应用客户端容容器通过用于于连接数据库库系统的JavaAPI、JDBCAPI与应用服务务器要求的数数据库相连接接。包含有JSP和Servlet的Web容容器和EJB容器也使用用同样的接口口与数据库相相连接。J2EE应用用服务器为应应用组件的部部署、管理和和执行提供了了支持。根据据对应用服务务器的依赖程程度,应用组组件可以被分分成3种类型型:在应用服务器器中被部署、、管理和执行行的组件,这这样的组件有有Web组件件和EJB组组件。在应用服务器器中被部署、、管理,但是是被下载到一一个客户端系系统上去执行行的组件。不完全按照应应用服务器的的要求被部署署和管理的组组件,应用客客户端就是这这样的组件。。应应用服务器体体系结构浏览器Servlet
orJSP容器EJBServerBCHTTPEntity
BeanHOMEREMOTESession
BeanHOMEREMOTE数据J2EE模型型A数据JDBCRMI/IIOPJDBC应用服务器4.4J2EE应用组组件J2EE应用用组件是指在在应用服务器器中运行的软软件组件,主主要有JSP、EJB和和Servlet三种。。JSP提供了了一种在网页页中嵌入组件件的方式,并并且允许生成成相应的网页页最终发送给给客户。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虚拟机执执行。Servlet是一个以以Java技技术为基础的的Web组件件,它被一个个容器管理,,它能产生动动态的内容。。Servlet通过Servlet容器实现现的请求/应应答机制与Web客户端端进行交互。。所有的Servlet容容器必须将HTTP作为为请求和应答答的协议。一个Servlet可以以具有这样一一个处理流程程:一个客户端连连接到一个Web服务
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 幼儿园学校评教工作制度
- 幼儿园年检年报工作制度
- 幼儿园扫码验证工作制度
- 幼儿园教师扶贫工作制度
- 幼儿园日常护理工作制度
- 幼儿园消杀检查工作制度
- 幼儿园疫情排查工作制度
- 幼儿园线索摸排工作制度
- 幼儿园评优评先工作制度
- 幼儿园防恐防暴工作制度
- 基于大数据的人力资源招聘效率提升研究
- 《金属非金属地下矿山人员定位系统建设规范》
- JJG 693-2011可燃气体检测报警器
- 矿山生态修复治理实施方案
- 名著导读:《西游记》课件
- 生物学在法医学与鉴定中的应用
- 抗美援朝战场上的感人故事三则
- 《炸药爆炸理论》讲义-安徽理工大学-郭子如教授-第三章-炸药的热分解与热安定性
- 体外膜肺氧合ecmo的护理
- AEC-Q101中文标准规范(可编辑修改word版)
- 宁氏谱系条目汇总表2016318支系名称家谱世系字辈-简明
评论
0/150
提交评论