已阅读5页,还剩65页未读, 继续免费阅读
(计算机应用技术专业论文)基于soa的企业信息集成的研究及应用.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 随着经济全球化,企业在分工布局上也呈现出全球化的趋势。互联网络迅速发展, 跨国公司日益增加,使分布式数据库系统跨地域分布的特点日益突出。由于历史或开发 方法不同的原因,虽然各个系统可以独自完成各自的任务,当需要数据分析或进行数据 挖掘的时候,信息的孤立性就凸现出来,即所谓的信息孤岛现象。一个数据源一旦成为 “信息孤岛”,就会导致应用系统在重用它的数据时需要花费很大的代价,如何弥补数 据之间差异引发的问题,将各个信息系统跨平台集成,成为目前亟待解决的问题。 x m l 和w e bs e r v i c e 技术的出现给分布式数据库的信息整合带来了新的实现方法。 首先,在不同的数据库及应用系统的数据进行交换时,x m l 是理想的交换介质,x m l 能够将不同来源的结构化的数据结合在一起,通过中间层的服务器对后端数据库和其他 应用数据进行集成。基于x m l 和s o a p 的w e bs e r v i c e 作为新一代的软件开发应用架 构可以在现有的各种异构平台之上实现一个与开发语言无关、与平台中立的技术层来实 现系统的连接与集成。 本文分析了信息集成的现状和传统技术存在的问题,研究了s o a 架构的特点,w e b s e r v i c e 的原理、实现、技术、安全等方面的问题,以及用x m l 进行数据转换的算法, 分析了采用s o a 的松散耦合架构、w e bs e r v i c e 技术解决企业异构数据整合的可行性。 通过x m l 实现对关系数据库的转化,发挥x m l 在数据交换中的优势。 最后在对全球呼叫中心异构数据源的数据分析系统进行集成的背景下,研究了s o a 技术与x m l 、w e bs e r v i c e 在企业信息集成的应用方法。将w e bs e r v i c e 通用性和x m l 的灵活性结合,提高系统的可维护性、可管理性和可集成性。本文研究的基于s o a 的 企业信息集成系统,不仅融合了目前企业各方面的管理信息,而且对今后企业发展中将 要扩充的领域( 如考勤、排班、电话量预测系统等) 也能很容易的集成进来。 关键词:s o a ;x i v i l w e bs e r v i c e ;s o a p ; 大连交通人学l j 学硕l :学位沦文 a b s t r a c t w i t ht h ed e v e l o p m e n to fe c o n o m i cg l o b a l i z a t i o n ,e n t e r p r i s e sa l s oe m e r g e dt h et r e n do f g l o b a l i z a t i o no nt h ed i s t r i b u t i o no fw o r k s t h er a p i dd e v e l o p m e n to fi n t e r a c t ,t h ei n c r e a s i n g o ft r a n s n a t i o n a lc o m p a n i e s ,m a k i n gt h ed i s t r i b u t i o nc h a r a c t e ri sb e c o m i n gm o r ep r o m i n e n ti n d i s t r i b u t e dd a t a b a s es y s t e m h o w e v e r ,d u et o h i s t o r yr e a s o no rd e v e l o p i n gm e t h o d sf o r d i f f e r e n t s y s t e m ,a l t h o u g he a c hs y s t e mc a nw o r ki n d e p e n d e n t l ya n df u l f i l lc u s t o m e r s r e q u i r e m e n t ,w h e nt h ei n f o r m a t i o ns y s t e mn e e dd a t ai n t e g r a t i o no rd a t am i n i n g ,t h ei s o l a t i o n i ss t a n d i n go u t ,t h a ti st h ei s l a n do fi n f o r m a t i o n ,o n c ead a t as o u r c eb e c o m i n ga n “i s l a n d so f i n f o r m a t i o n ”i tw i l lc o s tu sah i g hp r i c e ,h o wt oc o m p e n s a t et h ed i f f e r e n c eb e t w e e nt h ed a t a , i n t e g r a t ev a r i o u si n f o r m a t i o ns y s t e m st h r o u g hc r o s s p l a t f o r mi sac u r r e n tp r o b l e mn e e dt ob e s o l v e d x m la n dw e bs e r v i c et e c h n o l o g yi nt h ee m e r g e n c eo fd i s t r i b u t e dd a t a b a s eb r i n g sn e w i n f o r m a t i o ni nt h em e t h o do fi n t e g r a t e f i r s t l y ,w h e nd a t ae x c h a n g eb e t w e e nt h ed i f f e r e n t d a t a b a s e sa n da p p l i c a t i o n s ,x m li st h ei d e a lm e d i u m ,x m lc a nc o m b i n ed i f f e r e n ts o u r c e so f t h es t r u c t u r ed a t a ,i n t e g r a t e dt h ed a t aa n dd a t a b a s et h r o u g ht h em e d i u ms e r v e ro f t h eb a c k - e n d s e r v e ra p p l i c a t i o n sa n do t h e ra p p l i c a t i o n s ,s e c o n d l y ,w e bs e r v i c eb a s e do nx m la n ds o a p n e wg e n e r a t i o no fs o f t w a r ed e v e l o p m e n ta n da p p l i c a t i o nt e c h n o l o g y ,n od e p e n d e n c eo n p r o g r a ml a n g u a g ea n dp r o g r a mp l a t f o r mi nc o n n e c t i v i t ya n ds y s t e mi n t e g r a t i o n t h i sp a p e ra n a l y z e st h ee x i s t i n gp r o b l e m so ft r a d i t i o n a lt e c h n o l o g i e s ,s t u d i e do ns e r v i c e o r i e n t e da r c h i t e c t u r e ,t h ep r i n c i p l e 、r e a l i z a t i o n 、t e c h n o l o g y 、s e c u r i t ya n do t h e ri s s u e so f w e bs e r v i c e ,s t u d i e dt h ea l g o r i t h mo fx m ld a t ae x c h a n g e 、t h eu s eo ft h el o o s e l yc o u p l e d s o at e c h n o l o g y 、t h ef e a s i b i l i t yo fw e bs e r v i c ei nr e s o l v i n gi n t e g r a t i o ni nh e t e r o g e n e o u s e n t e r p r i s ed a t a b a s e r e a l i z et h et r a n s l a t i o nt h r o u g hx m l i nr e l a t i o n a ld a t a b a s e f i n a l l y ,b a s e do nag l o b a ls o l u t i o nc a l lc e n t e r sd a t a b a s es y s t e mi n t e g r a t ea sab a c k g r o u n d ,f o c u s e do nc h i n as u b s y s t e mi n t e g r a t ei n t ot h eg l o b a ls t a n d a r d sw h i c hb a s e do n s e r v i c eo r i e n t e da r c h i t e c t u r e s t u d i e dt h et e c h n o l o g yo fs o a p 、x m la n dw e bs e r v i c e a p p l y i n gi n o u rs y s t e m c o m b i n ew e bs e r v i c e c o m m o n a l i t ya n dx m l sf l e x i b i l i t yt o i m p r o v es y s t e mm a i n t a i n a b i l i t y ,m a n a g e a b i l i t ya n di n t e g r a t i o n ,i nt h en e ws y s t e mb a s e do n s o an o t o n l yi n c l u d ea l lt h eb a s i sa p p l i c a t i o no fe n t e r p r i s em a n a g e m e n ti n f o r m a t i o n ,b u ta l s o c o n s i d e r i n ga b o u tt h ef u t u r ed e v e l o p m e n to ft h ee x p a n d e da r e a , s u c ha sn e wa t t e n d a n c e c o n t r o l s y s t e m ,s c h e d u l i n g ,c a l lv o l u m ef o r e c a s t i n gs y s t e me t c ,a l lt h a tc a nb ee a s i l y i n t e g r a t e d k e yw o r d s :s o a ;x m l w e bs e r v i c e ;s o a p ; 绪论 绪论 一研究的背景和意义 随着全球经济一体化和企业分布全球化趋势的迅速发展,跨国公司是企业为实现利 益最大化而进行对外投资的产物。自进入2 1 世纪以来,跨国并购逐渐增多,成为发达 国家直接投资的主要动力。并购可以将其他公司的优势技术结合,发挥叠加效应的优势, 大大提升公司的竞争力。但这只是形式上的合并,要想真正的了解企业内部的运营情况, 把握企业的命脉,使企业能够对不断变化的市场做出快速反应,在激烈的市场竞争中占 据主动,常常需要企业对历史数据进行分析,作为衡量企业运营情况的晴雨表,用以制 定下一步发展计划。为了保持竞争上的优势管理者必须及时了解企业的信息以应对各种 挑战。但是,在企业的合并过程中往往有多种类型相同的应用系统,它们在开发语言、 部署平台、通信协议、对外交换数据的格式都存在着极大的不同,系统之间很少进行通 信,每个系统都是一个信息孤岛。这样造成的后果就是:企业信息冗余、数据不具有全 面性、维护起来十分麻烦、许多功能重复开发严重,想要把相关的信息整合在一起是一 件困难的工作。 我们急需一种能够降低软、硬件投入成本,提高工作效率,具有高集成性的解决方 案。实现跨国企业的信息集成具有非常重要的意义和紧迫感。本文就是在这样的背景下 对企业信息集成展丌研究的。 二国内外的现状 据统计一家典型的火企业在i t 的预算上约有3 3 的投资是花在传统历史系统的集 成上,通过“点对点”或中问件连接,使众多的信息孤岛联系起来。传统的企业信息集 成方法主要有: ( 1 ) 点对点集成 在点对点的集成方法学中,每个企业信息系统,都与其它信息系统通过点对点连接 在一起,优点是容易理解,只有少量系统需要集成时可以快速实现。缺点是如果一个发 生改变就会打破与它有关的集成,每个信息系统都要求有足够多的整合点来支持更多的 系统集成,如果有5 个互相集成的系统,就需要个1 0 不同的整合点,因此,这种方法 很难集成大量的应用系统,且集成的系统越多就越难维护。 ( 2 ) 消息中间件 由于点对点的集成方法很复杂、成本高、难于维护,于是引入了另外一种集成方法, 即基于消息总线或者中间件。各个信息系统和消息中问件的连通是用私有总线a p i 和应 人连交通人学i :学硕十学位论文 用程序a p i 来实现的。消息中间件和应用程序之问的紧密耦合使所有的应用程序都需要 了解与其集成的其他应用程序的内部工作方式。系统之间的集成都是粒状的,并且通过 消息类型紧密藕合。 ( 3 ) c o i t b a 、d c o m 、i n l i c o r b a 、d c o m 、r m i 是传统企业集成中常用的分布式通讯技术。 o m g ( o b j e c tm a n a g e m e n tg r o u p ,对象管理组织) 为了增强异构软硬件系统的协同 工作能力提出了c o r b a ( c o m m o no b j e c tr e q u e s tb r o k e ra i c h i t e c t u r e ,公用对象请求代 理体系结构) 方案和相关的标准规范。为实现分布式对象的透明远程通讯c o r b a 使用 了代理的概念。并且通过i d l ( i n t e r f a c ed e f i n i t i o nl a n g u a g e ,接i s i 定义语言) 映射成多对 程序语言,如c 、c + + 、j a v a 等。 微软公司的d c o m ( d i s t r i b u t e dc o m p o n e n to b j e c tm o d e l ,分布式组件对象模型) 扩展了组件对象模型技术( c o m ) ,使其能够支持在局域网、广域网甚至i n t e m e t 上不 同计算机的对象之问的通讯。其工作原理与c o r b a 相似,使用了代理的概念,区别在 于d c o m 只能基于m i c r o s o f tw i n d o w s 平台,是w i n d o w s 间的集成。 r m i ( r e m o t em e t h o di n v o c a t i o n ,远程方法调用) 是j a v a 的集成方案,客户程序与 服务程序都必须使用j a v a 语言编写。r m i 也使用代理方式,但不像c o r b a 和d c o m 那样有i d l ,而是使用j a v a 语言中的i n t e r f a c e 作为接口,服务程序必须实现该接口。 r m i 隐藏了远程调用的细节,它使用j r m p ( j a v ar e m o t em e t h o d sp r o t o c o l ,j a v a 远程 方法协议) 进行通讯。 以上三种传统方法大都存在着依赖于单一厂商、紧耦合、与平台绑定、互操作难等 问题。无法构建能够满足企业动态变化需求、敏捷的企业整合环境。对于很多全球性的 大公司来说,他们会在世界各地建有分工厂,要实行标准化的统一管理,必须做到的一 点就是管理模式一定要可以复制,i t 手段则是让所有工厂保持一致性的唯一途径。i t 系统罩固化了很多流程,将管理流程固化到i t 系统里,会使管理变得更加便捷和透明。 为了解决传统集成方法的问题,我们需要一种面向功能层的企业信息集成方式。该方式 不仅能保证原有系统的数据安全性和逻辑安全性,而且还能够实现各系统之间的松耦 合,方便系统流程的重组和优化。这种方式就是基于面向服务架构( s o a ) 的企业信息 集成方式。面向服务的体系结构具有以下五大优点: ( 1 ) 语言独立。企业信息集成通常需要集成早期开发的多个企业应用系统。这些系 统一般都是在不i 司时期由不同的软件开发商采用不同的软件歹f = 发方法和软件丌发工具 丌发的。由于s o a 架构具有语言独立的优点,因此采用它能将不同语言和不同版本的 企业应用系统集成起来。 2 绪论 ( 2 ) 实现松耦合。松耦合特性能方便企业中单个系统流程的优化,适合企业需求变 化的动态性。使得交互双方中一方的改动不会影响到另一方,降低单个企业软件升级时 带来的附加成本。 ( 3 ) 跨平台。s o a 能集成不同网络环境下的企业应用系统,能够保护原有网络资源, 减少开销。 ( 4 ) 良好封装性。服务的良好封装性不仅提高了应用系统的数据安全性和逻辑安全 性,而且增强了单个服务的复用性,节省重复开发成本。 ( 5 ) 服务位置透明。s o a 中,服务位置的透明使得服务可以被动态的绑定,也可以 被静态调用,这样方便了调用者对服务的使用。 综上所述,具有语言独立、松耦合、跨平台、封装性好、服务透明等特点的s o a 是非常适合于企业信息集成的。 三论文研究的主要内容及组织结构 通过以上简要分析,解决跨国企业内部异构数据源的信息集成问题,应从业务角度 和技术实现两个方面着手: 首先,从业务角度来分析,企业在合并期间,往往合并的是一个麻雀虽小却五脏俱 全型的小企业。对于大企业而言,推翻小企业以往的应用系统,重新搭建当然是不明智 的做法,这就需要我们将小企业的数据以大企业的相关标准进行整合以便管理者进行统 一管理。 其次,从企业管理者的角度来看,当然希望各个部门的信息表示格式是一致的。如 何使得这些信息的表示具有通用性,可扩展性,可重用性。是我们急需解决的问题。我 们希望有这样一种更好的架构,它不但能适应单一应用,还能够适合企业整合应用的架 构。自从经历了面向过程面向对象面向组件这三个阶段后,s o a 已不再是一个 纯粹的概念,因为企业需要一个跨系统、跨部门应用的企业j 照用架构,在此架构上,各 个系统都能够以种标准“服务”的形式丌放出来,并且相互之i 口j 能够非常容易的沟通。 s o a 作为一种建立、维护、管理l t 系统和业务流程的方法,它采用统一的标准和连接 模式将所有应用程序集合起来,而目,这种应用基础使业务应用开发人员更加容易建立 起专f - j 譬- t 。对企业需求的新型程序,因此有助于解决i t 管理混乱的问题。 最后,选择使用何种技术来进行企业间信息集成。对于跨国企业来说,各个企业组 成单元分布在一个广阔的窄间中,这要求信息系统必须具有远程通信的能力,随着企业 之间的信息流动加快,企业之问的合作关系也更为灵活、松散,这种情况下的信息集成 技术应该满足: ( 1 ) 松散耦合,可扩展性较好。 火连交通人学r 学硕十学位论文 ( 2 ) 与平台中立,与开发工具、程序语言无关。 ( 3 ) 集成能力强,柔性强,互操作性高。 ( 4 ) 完全开放,安全性耐2 1 。 综上所述,笔者认为,企业内部信息集成应该在分析企业管理特点、所需集成信息 的基础上,基于s o a 架构、通过x m l 语言作为企业间信息集成的数据转换方式,使用 w e bs e r v i c e 作为企业间信息集成的主要手段。 本论文共分为四章。具体组织结构如下: 在第一章中,分析了s o a 、x m l 、w e bs e r v i c e 等相关技术,为建立通过x m l 的异 构数据转换奠定理论基础。 在第二章中,详细阐述了x m l 数据文件与关系数据的相互转化、基于模板驱动的映 射方法、基于模型驱动的映射方法、x m l 与关系数据库的双向映射等相关算法的设计和 实现。 在第三章中,通过对企业需求信息的深入分析,进一步提出了基于全球呼叫中心信 息集成的总体框架及u m l 建模和表达。 在第四章中,详细介绍了基于s o a 、x m l 、w e bs e r v i c e 技术的异构数据集成系统 在全球呼叫中心的实际应用,通过e s b 企业服务总线实现对各种服务进行集成管理,将 全球各个子系统数据进行集成。从实践角度证明系统框架的可行性,同时指出系统存在 的不足和有待提高的方面。 四实现目标 本文旨在提出一种基于s o a 框架、x m l w e bs e r v i c e 技术的企业间信息集成框架, 同时通过对该平台的实现和分析,对x m l 文档模式与关系模式相互转换技术进行改进, 期望能实现一个通用的食业信息集成平台,尽可能地消灭信息孤立,实现企业信息资源 整合以及实现一个管理及实施优良的中心系统。 4 第章关键技术:s o a 、x m l 和w e bs e r v i c e 第一章关键技术:s o a 、x m l 和w e bs e r v i c e 本章将介绍论文中所使用的关键技术s o a 、x m l 和w e bs e r v i c e ,分析它们的 特点、优势。 1 1s o a 概述 1 1 1s o a 定义 g a r t n e r 最早提出了s o a ( s e r v i c eo r i e n t e da r c h i t e c t u r e ) 这一术语,并将s o a 定义 为:“本质上是服务的集合。服务间彼此通信,这种通信可能是简单的数据传送,也可 能是两个或更多的服务协调进行某些活动。服务间需要某些方法进行连接。所谓服务就 是精确定义、封装完善、独立于其他服务所处环境和状态的函数”。s o a 的关键是“服 务”的概念,w 3 c 将服务定义为:“服务提供者完成工作,为服务使用者交付所需的 最终结果。最终结果通常会使使用者的状念发生变化,但也可能使提供者的状态改变, 或者双方都产生变化”。 s o a 是一种更灵活,性能更高,更安全可靠的b s 架构。它由一系列相瓦交互的服 务组成,每种服务都能提供对其定义功能集的访问。这种用软件服务形式以公丌业务功 能的方法增强系统的灵活性。系统可以通过增加新的服务来实现更新。s o a 定义了系统 由哪些服务组成,描述了服务之间的交互,并将服务映射到一个或多个具体技术的实现。 要求开发者从服务集成的角度来设计应用软件,要超越应用软件来思考问题。同时,要 考虑如何让现有的服务被重复利用,通过把服务联系在一起而非编写新代码来构架应 用。经过适当的构架后,这种应用允许企业仅通过调整原有服务模式而非被迫进行大规 模新的应用代码的丌发。软件应用的实现通常有两种方式;一是丌发;另一种是集成。 由于现有的数据和业务处理需要把他们利用或整合起来,于是出现了集成、整合的概念。 数据集成的核心任务是要将互相关联的分布式异构数据源集成到一起,使用户能够以透 明的方式访问这些数掘源。集成是指维护数据源整体上的数据一致性、提高信息共享利 用的效率。实现数据集成的系统称作数据集成系统,它为用户提供统的数据源访问接 口,执行用户对数据源的访问请求。s o a 不仅是架构更是软件设计方法,是在整个企业 范畴内做企业基础架构的设计。采用s o a 架构设计时,开发与集成可以互相融合。当 使用s o a 时,技术人员开发过的东西可以被别人集成。基于标准的服务架构,即使是 旧的应用也町以用这种方法进行封装,从而实现复用。 s o a 很早就被提了出来。比如b e a 的t u x e d 。就是一个非常传统的“服务”套件, 相当多的应用系统己经启用了“服务”的雏形,比如提供接口( i n t e r f a c e ) 允许其他系 5 大连交通人学i :。硕十学位论文 统来调用等。现在的s o a 和当初的s o a ( g a r t n e r 刚刚提出的时候) 有两点差别:现在 的s o a 是“标准”的s o a ,使得我们可以充分利用其标准性和成熟度,是“标准 的, 而原先的s o a 是“非标准”的,只是各个厂商倡导的一种软件体系结构而己。“标准 的价值在于它能够在企业内部建立一个标准服务的基础架构,从而省却集成的成本。 1 1 2s o a 的基本特征 s o a 的一个中心思想就是使得企业应用能够摆脱面向技术的解决方案的束缚,轻松 应对企业商业服务变化、发展的需要。s o a 具有一些鲜明的特征。实施s o a 的关键目 标是实现企业i t 资产的最大化重用。要实现这一目标,就要在实施s o a 的过程中牢记 以下特征: ( 1 ) 可从企业外部访问 ( 2 ) 随时可用 ( 3 ) 粗粒度的服务接口 ( 4 ) 分级 ( 5 ) 松散耦合 ( 6 ) 可重用的服务 ( 7 ) 服务接口设计管理 ( 8 ) 标准化的服务接口 ( 9 ) 支持各种消息模式 ( 1 0 ) 精确定义的服务契约 原先我们遵循的是一种“紧耦合”的方式,是一个调用一等待一响应的过程,而这 个等待过程在系统比较空闲的情况下能够快速响应,一旦服务器的负载比较大时,请求 方就需要一个漫长的等待过程,同时任何服务的改变都i l j 能影响到其他服务。虽然紧密 藕合能提供高效率的应用,但是在企业应用范围之内,我们更多要求的是“松耦合 每 个应用都是相对独市的,我们必须保证其灵活性。这时候的s o a 就是一种“松耦合” 的架构。总体而占,s o a 是一个越来越“抽象、松耦合和粗粒度 的软件架构。 1 1 3s o a 与传统架构的比较 由于s o a 是在计算机应用环境下的设计、开发、应用、管理,采用分散的逻辑单 元的一种规范,所以s o a 必须具有广泛性的特点。s o a 要求开发者从服务的角度来设 计应用软件,要求开发人员超越应用软件的设计模式来思考,并要考虑到能够复用现有 的服务,或如何让服务被重复利用。即便这样做的话利益也不会马上就显现出来。s o a 鼓励使用可替代的技术和方法( 例如消息机制) ,通过把服务联系在一起而非编写新代 6 第章关键技术:s o a 、x m l 和w e bs e r v i c e 码来构架应用。经过构建之后,这种消息机制的应用允许公司仅通过调整原有服务模式 而非被迫进行大规模应用代码的开发,使得在商业环境许可的时间内对变化的市场条件 做出快速的响应。 s o a 也不仅仅只是开发理论的方法论,它还包含管理。例如,应用s o a 后,管理 者可以方便地管理这些搭建在服务平台中的企业应用,而不是管理单一的应用模块。其 原理就是通过分析服务之间的相互调用,可以使得公司管理人员方便地获取任何时候、 任何原因、任何被执行的商业逻辑的数据信息,这样就极大地帮助了企业管理人员的管 理以及应用架构人员来迭代地优化他们的企业业务流程以及应用系统。s o a 的一个中心 思想就是让企业应用彻底摆脱面向技术的解决方案的束缚,轻松应对企业商业服务变 化、发展的需要。企业i t 架构环境中单个应用程序是无法包容业务用户的各种需求的, 即使是一个大型的e r p 解决方案,仍然不能满足这个需求在不断膨胀、变化的需要。 对市场快速做出反应,商业用户只能通过不断丌发新应用、扩展现有应用程序来艰难支 撑目前的业务需求。并且通过将注意力放在服务上,应用程序能够集中起来提供更加丰 富、目的性更强的商业流程。在面向服务架构中,服务是封装成用于业务流程的可重用 组件。它提供信息或简化业务数据从一个有效的、一致的状态向另一个状态的转变。用 于实现特定服务的流程并不重要,只要它响应服务请求者的命令并为服务清求者提供高 质量的服务就可以了i 文引。所以,基于s o a 的企业应用系统通常会更加真实地反映出与 业务模型结合的业务组件提供相应的接口来实现系统对组件中各业务方法的调用。在 s o a 下,软件系统由服务构成,由前文可知,业务组件与服务最大的差别在于接口,服 务具备统一的标准化的接口,即与硬件平台、操作系统和编程语言无关的中立的接口, 而般的业务组件并不具备。因此,s o a 业务组件最大的特点在于可以通过添加标准的 接l j 改装成服务。而目前这种标准接口一般实现为w e bs e r v i c e 接口1 6 j 。 s o a 是“自顶向下”而产生的,正是因为企业应用复杂度的增强造成了目前很多应 用无法完全适应不断发展的业务需求,于是“整合”就成为企业望而生畏却不得不而对 的问题,s o a 在应对这样的i u j 题时则显得理直气壮,“面向服务、无需整合、标准化、 松散耦合”等等一系列与生俱来的优势为企业的信息化提供了理论基础。 1 2x m l 技术 1 2 1x m l 概述 可扩展标记语言x m l ( e x t e n s i b l em a r k u pl a n g u a g e ) 是从标准通用标记语言s g m l ( s t a n d a r dg e n e r a l i z e dm a r k u pl a n g u a g e ) 发展而来的一种新的描述型标记语言,也是用 7 大连交通人学l :学硕 :学位论文 于i n t e m e t 数据描述与交换的一种新标准。它由国际标准化组织万维网联盟w 3 c ( w o r l dw i d ew e bc o n s o r t i u m ) 于1 9 9 8 年2 月推出的。 所谓可扩展性是指x m l 允许用户按照x m l 规则自定义标记。x m l 文件是由标记 及其所标记的内容构成的文本文件,与h t m l 文件不同的是,这些标记可自由定义, 其目的是使得x m l 文件能够很好地体现数据的结构和含义。w 3 c 推出x m l 的主要目 的是使得i n t e r a c t 网络上的数据相互,交流起来更加方便,文件的内容更加显而易懂1 7 j , 在应用之初会经常用x m l 来解决h t m l 信息的不确定性和网站之间的数据交流问题, 但是随着应用的深入,x m l 在数据存储、软件开发、网站运营、移动互联等方面逐渐 呈现出它的优越性能。越来越多的企业在他们的产品中增加了对x m l 的支持,如 o r a c l e 9 i 、s q ls e r v e r2 0 0 5 等,m i c r o s o f t 的新一代开发平台n e t 的实现也是完全基于 x m l 语言的。x m l 在数据定义、传输和交换中发挥着越来越重要的作用。 以下是一个简单的x m l 文件实例: 2 0 2 8 7 6 3 4 5 h wd e l i v e r y 2 0 0 7 - 0 2 - 0 9 f ut i n g t i n g 2 0 0 7 0 3 0 5 f ut i n g t i n g 硬盘故障 更换硬盘 2 0 2 8 7 6 3 4 5 2 0 2 8 7 6 3 4 5 2 21 t r u e f a l s e f ut i n g t i n g 可以看出x m l 文档的实现是一种树形的结构。在本实例的第一行是声明部分,包 含属性v e r s i o n ,指出该x m l 文件使用的x m l 版本。还有e n c o d i n g 属性,该属性规定 8 第一幸天键技术:s o a 、x m l 和w e bs e r v i c e x m l 文件采用的字符集,如果不指定该属性的值,默认为u t f 8 ,使用u t f 8 那么标 记以及标记的内容就可以使用汉字、日文、英文等他还兼容了g b 2 3 1 2 、b i g 5 、e u c j p 等多种国家的语言编码,还可以根据实际需要若只使用a s c i i 字符,可以将e n c o d i n g 属性设置为“g b 2 31 2 ”、“i s o 8 8 5 9 1 使用a n s i 编码保存文件。下面就是标记内容 的部分了。开始由开始标记组成,格式如下: 标记内容 。由 结束标记。标记的名称必须以字母或下划线开头,可以由字母、数字、下划线、点 或连字符组成。字母包括许多国家语言中的文字,不仅限于通常的拉丁字母。需要切记 的是标记名称分大小写。不同的大小写字母标记的将是不同的。 1 2 2x m l 的主要特点 x m l 语言所具有的特性使得它很适合作为信息交换的标准格式。目前x m l 的应用 范围从早先的w e b 信息描述,至今到成为开放环境下描述数据的开放标准。是由于x m l 本身所具有的一些特征所决定的,正是这些特性使它成为目前服务集成和服务交互开放 技术中最重要的技术,x m l 语言主要特点如下: ( 1 ) 自描述性 这个特性使得计算机在没有人干预的情况下,就可以轻松地理解数据的含义。x m l 自身的另一个明湿的特点是,语法关键字极少,可以说它是用它自身的数据来定义描述 自身的格式,这些描述被称为“元数据( m e t e d a t a ) ,这使得在编制这样的文件时, 数据文件自身十分容易读取,在编写程序时处理也变得简单。往往是,定义文件语法语 义的关键字的说明和定义和数据文件统一在一起,这使得在得到数据文件本身的时候, 也就得到了文件本身的语法语义使用说明和参照表。 ( 2 ) 可扩展性 x m l 允许用户根据应用自行定义标签,且文档可以通过d t d 来定义文档结构,使 其它信息系统自动了解文档的内容。用户也可以根据需要定义新的标志。 ( 3 ) 分层结构化 x m l 文档的实现是一种树形的结构,通过标签的嵌套,x m l 可以描述任意层次的 文档结构,这保证了信息的层次性。x m l 提供结构化和集成的数据,它不仅可以对数 据进行结构化,而且可以指定元素问的联系,从而,可以建立有任何复杂层次的数据模 型o ( 4 ) 易于实现数据共享与重用 系统可以屏蔽掉后台的多种数据源,用统一的x m l 数据呈现给用户。接收数据方 根据x m l 数据的“s c h e m a ”,可以对数据进行任意的处理,分解出其中需要的数据或 9 人连交通人学l :学硕十学位论文 是以不同的呈现式样显示出来。因此用x m l 作为数据交换的中介,给系统的实现带来 了极大的灵活性,它很适合在不同的应用程序之间交换数据,实现数据共享,并且具有 速度快、效率高的特点。 ( 5 ) 保值 x m l 文件不会因为时间的变换而变得不可读,不可处理,因为x m l 格式之间的转 化简单而且更加灵活们。 ( 6 ) 更精确的搜索 x m l 标签表达的是内容的定义,通过标准的解释器,可以方便快速的查询x m l 文 档的内容,得到更精确的需要的内容【2 】。 x m l 因上述的诸多优点,适合用来作为企业内部信息集成的一种手段。而如何将 x m l 应用于数据集成的环境中呢? 谈到具体应用,这就涉及到x m l 的一个关键技术: 文档建模。 1 2 3x m l 的模式 目前,对x m l 的数据结构进行限制有d t d ( 文档类型定义) 和x m ls c h e m a 两种 方式。 ( 1 ) d t d ( d o c u m e n tt y p ed e f i n i t i o n ,文档类型定义) d t d 是x m l 文档的模板,定义在x m l 文档中的可以采用的结构标记,解析器根 据定义的结构对x m l 文档进行分析,以确保其数据的有效性,一个符合文档类型定义 的文档才能够称为数据有效的x m l 文档。d t d 给出了x m l 文档中能够使用的元素、 属性、标记、实体的定义及其相互关系,即定义了在x m l 文档中所能采用的词汇表及 其相关的语法规则。当初x m l 的标准刚制订时,由于x m l 是s g m l 的一个子集,因 此它也继承了s g m l 规范中用于建模的d t d 。这也使d t d 有不少先天的缺陷,描述能 力、扩展能力和处理能力有限。 一个规范的x m l 文件如果和某个d t d 文件相关联,并遵守该d t d 文件的限制, 那么,就可以称该x m l 文档为有效的。 对应2 2 1 的x m l 文件的d t d 文件如下: l o 第章关键技术:s o a 、x m l 和w e bs e r v i c e 其中元素( e l e m e n t ) 是用来约束x m l 的标记。约束标记c a s e 只可以有而且必须 要有m a i n c a s e ,s u b c a s e 两个子标记。在d t d 文件中不能使用多个元素约束同一个标记, 即使约束条件相同也不可以。 如果对x m l 文件的约束只限于文本的标记和属性结构,而不涉及文本的具体内容, d t d 就足够了,因为它能完成x m ls c h e m a 的大部分功能,而且兼容性更好。比如, 有几家相互联系的用户,他们相互之间的交换电子文档如果都足用x m l 文档。那么我 们可以将这些x m l 文档的d t d 公有化,让所有交换的x m l 文档都使用同一d t d 文 件,这是一个非常有效的好办法。而且,d t d 文件也特别适用于限定具体使用范围的 x m l 文件使用1 1 2 1 o ( 2 ) x m ls c h e m a 之所以会出现s c h e m a ,是因为d t d 存在着诸多的缺陷: d t d 是基于正则表式的,它的描述能力有限; 没有数据类型的支持,在大多数应用环境下能力不足; 对定义的约束能力不足,无法对x m l 文档作出更细的语义限制; 不够结构化,当面临重用时的代价相对较高; d t d 的构建和访问并没有标准的编程接口,没有办法使用标准的编程方式进行 d t d 维护。 而x m ls c h e m a 正是针对这些d t d 的缺点而设计的,相对于d t d ,x m ls c h e m a 的主要优点如下: 人连交通人学l :学硕f :学位沦文 x m ls c h e m a 它本身是基于x m l 的,用x m l 作为描述手段,可以象其他x m l 文件一样解析和处理。x m ls c h e m a 与x m l 格式的一致性使得以x m l 为数据交换格 式的应用系统之间可以方便地进行模式交换。而d t d 有其特殊的关键字和语法规则。 x m ls c h e m a 可以采用和x m l 文档相同的方法验证自身格式的正确性,而d t d 不可以。 x m ls c h e m a 继承了x m l 的自描述性和可扩展性,因此具有良好的可读性和灵 活性,而d t d 则是采用一种封闭式的结构,必须将x m l 词汇表和语法规则全包括其中 且不能扩充。 x m ls c h e m a 内置了3 7 种数据类型,并提供可扩充的数据模型,支持属性组和 用户自定义类型,而d t d 只提供了1 0 种,不能有效地满足文档可理解性和数据交换的 需要,也不能有效地描述关系数据库。 x m ls c h e m a 支持命名空间,d t d 则不支持。 总而言之,s c h e m a 与d t d 相比功能更加强大,具有丰富的数据类型,允许用户自 定义数据类型,具有开放性。 下面是x m ls c h e m a 的基本语法。 s c h e m a 声明部分:“s c h e m a ”是x m ls c h e m a 中出现的第一个元素,声明该x m l 文档是一个s c h e m a 文档。语法表达如下: s c h e m a 具有两个属性:一个是n a m e 用于指定该s c h e m a 的名称,而x m l n s 则用于 指定该s c h e m a 包含的命名空间。 在s c h e m a 中元素的定义是通过关键字e l e m e n t t y p e 来进行的,一般的元素定义舰 则如下: e l e m e n t t y p ec o n t e n t 一 e m p t y l t e x t o n l y l e l t o n l y l m i x e d ” d t :t y p e = ”d a t a t y p e ” m o d e l _ o p e nc l o s e d n a m e = ”e l e m e n t n a m e ” o r d e r = ” o n e l s e q l m a n y ” 其中表达式“ 的作用是为元素增添一个子元素,使该元素 成为元素类型。 该定义中常用的几种属性的意义。 e l e m e n t t y p e 的c o n t e n t 属性,该属性的可选值有四个,即:e m p t y ,t e x t o n l y ,e l t o n l y 和m i x e d 其中e m p t y 表示内容为空,t e x t o n l y 表示只包含文本类型的内容,e l t o n l y 表示 只包含元素类型的内容,而m i x
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 肉牛短期育肥增重饲养管理方案
- 亚健康人群问诊话术操作手册
- 温经络熏蒸理疗实施操作指引
- 草莓商品果采摘分级操作标准
- 奶牛夏季防暑降温乳房保健规程
- 现代拖拉机田间驾驶标准化安全操作指南
- 辣椒水肥一体化操作实施方案
- 生猪标准化规模养殖防疫规程
- 苹果树夏季修剪管理技术规范
- 农作物种子包衣技术实施方案
- GB/T 3033-2025船舶与海上技术管路系统内含物的识别颜色
- 103 人工智能在教育领域的发展趋势与教师准备
- 精神分裂症测试题
- 江苏省无锡市2025年中考地理真题试卷附真题答案
- 生产管理晋升转正述职
- 疝气病人出院宣教
- 2025年南通纳米碳酸钙项目可行性研究报告
- 老年黄斑变性进展护理
- 第15课《水果的时间魔法-自制水果酵素》(课件)-三年级下册劳动种植自制校本
- 云车高空作业车施工方案
- 湖南学考高一试卷及答案
评论
0/150
提交评论