信息系统开发技术概述_第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+事件件服务会决决定如何通通知订阅者者,决定什什么时候通通知订阅者者。如同队队列组件情情形一样,,发布者和和订阅者的的生存时间间可以被分分离。2.5.3负载平平衡为了使组件件支持负载载平衡,必必须定义一一个应用群群集(applicationcluster),应应用群集是是指一组已已经安装了了服务器端端组件的机机器,然后后把一台机机器配置成成负载平衡衡路由器(router)。。COM+负负载平衡以以NT系统统服务的形形式运行在在路由器机机器上,当当路由器的的SCM(ServiceControlManager)接收到远远程创建对对象请求时时,它把请请求传递到到负载最轻轻的机器上上。一旦对对象已经被被成功创建建,那么客客户与对象象之间的连连接是直接接进行的,,而不必再再通过路由由器。2.5.4内存数数据库(IMDB)COM+的的内存数据据库(InMemoryDatabase)服务用用于保存应应用的非永永久状态信信息。IMDB是一一个驻留在在内存中的的支持事务务特性的数数据库系统统,它可以以为COM+应用程程序提供快快速的数据据访问。由于IMDB是内存存中的数据据库,所以以IMDB只对本机机器上的COM+组组件有效,,不支持分分布式概念念,并且多多个IMDB机器不不能装入同同一个数据据表。2.5.3

COM+对象象池对象池是指指把对象的的实例保留留在内存中中,以便当当客户请求求创建对象象时可以马马上用到这这些对象。。对象池如如同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规范范的基本组组成如下图图所示。3.2.1对象请请求代理ORBORB(ObjectRequestBroker)是CORBA的核心,,在CORBA中,,所有的通通讯都通过过ORB进进行。ORB作为为一个“软软件总线””来连接网网络上的不不同对象,,提供对象象的定位和和方法调用用,它是CORBA实现的关关键。其主主要功能是是定位服务务对象,分分析客户对对象的请求求,获取服服务对象的的功能接口口,在客户户与服务对对象间建立立通信连接接。客户对象完完全可以不不关心服务务器对象的的位置、实实现它所采采用的具体体技术和工工作的硬件件平台。3.2.2接口定定义语言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服务器器,并发送一一个HTTP请求到这个个Web服务务器。请求被Web服务器接收收并转交给Servlet容器。Servlet容器可以以与Web服服务器在相同同主机或不同同的主机上运运行。Servlet容器在其其配置的Servlet中找到调用用的Servlet,然然后用代表请请求和应答的的对象调用它它。Servle

温馨提示

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

评论

0/150

提交评论