(计算机应用技术专业论文)基于web+service的国网审计管理系统中数据交换平台的研究与设计.pdf_第1页
(计算机应用技术专业论文)基于web+service的国网审计管理系统中数据交换平台的研究与设计.pdf_第2页
(计算机应用技术专业论文)基于web+service的国网审计管理系统中数据交换平台的研究与设计.pdf_第3页
(计算机应用技术专业论文)基于web+service的国网审计管理系统中数据交换平台的研究与设计.pdf_第4页
(计算机应用技术专业论文)基于web+service的国网审计管理系统中数据交换平台的研究与设计.pdf_第5页
已阅读5页,还剩46页未读 继续免费阅读

(计算机应用技术专业论文)基于web+service的国网审计管理系统中数据交换平台的研究与设计.pdf.pdf 免费下载

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

文档简介

华北电力大学硕士学位论文 摘要 随着科技的迅猛发展,现代企业对信息管理的要求越来越高。由于目前企业的 各种信息系统构建于不同的时期且在应用方面缺乏统一规划,导致系统之间无法进 行关联,资源难以共享,形成了很多“信息孤岛”。因此,企业迫切需要搭建起统 一高效的数据交换平台,以达到企业一体化建设过程中的信息共享。 本文在全面分析国内外成功案例、深入研究现有数据交换技术的基础上,从客 观和实效的角度来设计数据交换平台的基本开发方式与框架结构,并对平台实现过 程中比较重要的模式转换、模式映射等相关问题和理论方法进行了详细分析。最后 结合具体的项目,阐述该平台在实际应用中的定位、主要功能和典型应用场景,以 及利用数据交换平台实现纵向数据交换的步骤。 关键词:x m l ,w e bs e r v i c e ,x m ls c h e m a ,数据交换,模式转换 a b s t r a c t a l o n gw i t ht h er a p i dd e v e l o p m e n to fs c i e n c ea n dt e c h n o l o g y , t h ed e m a n do fi n f o r m a t i o n m a n a g e m e n tf o rm o d e r ne n t e r p r i s ei sm o r ea n dm o r eh i g h b e c a u s ev a r i o u si n f o r m a t i o n s y s t e m so fe n t e r p r i s ew h i c hw e r eb u i l ta td i f f e r e n tp e r i o d sa n dw e r el a c ko fu n i f o r ma p p l i e d p r o g r a m m i n ge a r l tc o n n e c tw i t he a c ho t h e ra n ds h a r er e s o u r c e ,t h e nt h e yb e c o m em a n y i n f o r m a t i o ni s l a n d s t h ee n t e r p r i s ei m m i n e n t l yn e e dt os e tu pu n i f o r ma n de f f e c t i v e d a t ae x c h a n g ep l a t f o r mt os h a r ei n f o r m a t i o ni ni n c o r p o r a t eb u i l d i n go fe n t e r p r i s e b a s e do nt h ea n a l y s i so ft h ed o m e s t i ca n df o r e i g ns u c c e s s f u lc a s e sa n dt h e r e s e a r c ho fd a t ae x c h a n g et e c h n o l o g y , t h i sp a p e rd e s i g n sb a s i cd e v e l o p m e n tm o d e a n df r a m e w o r ko fp l a t f o r m ,e s p e c i a l l ya n a l y z e ss o m ei m p o r t a n ti s s u e sa n dt h e o r i e s i n c l u d i n gm o d ee x c h a n g e ,m o d em a p p i n ga n ds o o n t h e ni t o b je c t i v e l ya n d e f f e c t i v e l ye x p a t i a t e st h eo r i e n t a t i o n ,p r i m a r yf u n c t i o n s ,r e p r e s e n t a t i v ea p p l i e d s c e n e so fp l a t f o r m ,a n dt h ep r o c e s so fl e n g t h w a y sd a t ae x c h a n g eb yt h ep l a t f o r mi n a na c t u a ls y s t e m , z h a n gn a n ( c o m p u t e ra p p l i c a t i o nt e c h n o l o g y ) d i r e c t e db ya s s o c i a t ep r o f l iy u a n - c h e n g k e yw o r d s :x m l ,w e bs e r v i c e ,x m ls c h e m a ,d a t ae x c h a n g e ,p a t t e r nt r a n s f o r m 华北电力大学硕士学位论文 摘要 随着科技的迅猛发展,现代企业对信息管理的要求越来越高。由于目前企业的 各种信息系统构建于不同的时期且在应用方面缺乏统一规划,导致系统之间无法进 行关联,资源难以共享,形成了很多“信息孤岛”。因此,企业迫切需要搭建起统 一高效的数据交换平台,以达到企业一体化建设过程中的信息共享。 本文在全面分析国内外成功案例、深入研究现有数据交换技术的基础上,从客 观和实效的角度来设计数据交换平台的基本开发方式与框架结构,并对平台实现过 程中比较重要的模式转换、模式映射等相关问题和理论方法进行了详细分析。最后 结合具体的项目,阐述该平台在实际应用中的定位、主要功能和典型应用场景,以 及利用数据交换平台实现纵向数据交换的步骤。 关键词:x m l ,w e bs e r v i c e ,x m ls c h e m a ,数据交换,模式转换 a b s t r a c t a l o n gw i t ht h er a p i dd e v e l o p m e n to fs c i e n c ea n dt e c h n o l o g y , t h ed e m a n do fi n f o r m a t i o n m a n a g e m e n tf o rm o d e r ne n t e r p r i s ei sm o r ea n dm o r eh i g h b e c a u s ev a r i o u si n f o r m a t i o n s y s t e m so fe n t e r p r i s ew h i c hw e r eb u i l ta td i f f e r e n tp e r i o d sa n dw e r el a c ko fu n i f o r ma p p l i e d p r o g r a m m i n gc a n tc o n n e c tw i t he a c ho t h e ra n ds h a r er e s o u r c e ,t h e nt h e yb e c o m em a n y i n f o r m a t i o ni s l a n d s t h ee n t e r p r i s ei m m i n e n t l yn e e dt os e tu pu n i f o r ma n de f f e c t i v e d a t ae x c h a n g ep l a t f o r mt os h a r ei n f o r m a t i o ni ni n c o r p o r a t eb u i l d i n go fe n t e r p r i s e b a s e do nt h ea n a l y s i so ft h ed o m e s t i ca n df o r e i g ns u c c e s s f u lc a s e sa n dt h e r e s e a r c ho fd a t ae x c h a n g et e c h n o l o g y , t h i sp a p e rd e s i g n sb a s i cd e v e l o p m e n tm o d e a n df r a m e w o r ko fp l a t f o r m ,e s p e c i a l l ya n a l y z e ss o m ei m p o r t a n ti s s u e sa n dt h e o r i e s i n c l u d i n gm o d ee x c h a n g e ,m o d em a p p i n ga n ds o o n t h e ni t o b je c t i v e l ya n d e f f e c t i v e l ye x p a t i a t e st h eo r i e n t a t i o n ,p r i m a r yf u n c t i o n s ,r e p r e s e n t a t i v ea p p l i e d s c e n e so fp l a t f o r m ,a n dt h ep r o c e s so fl e n g t h w a y sd a t ae x c h a n g eb yt h ep l a t f o r mi n a na c t u a ls y s t e m z h a n gn a n ( c o m p u t e ra p p l i c a t i o nt e c h n o l o g y ) d i r e c t e db ya s s o c i a t ep r o f l iy u a n - c h e n g k e yw o r d s :x m l ,w e bs e r v i c e ,x m ls c h e m a ,d a t ae x c h a n g e ,p a t t e r nt r a n s f o r m 声明尸明 本人郑重声明:此处所提交的硕士学位论文基于w e bs e r v i c e 的国网审计管理系 统中数据交换平台的研究与设计,是本人在华北电力大学攻读硕士学位期间,在导师 指导下进行的研究工作和取得的研究成果。据本人所知,除了文中特别加以标注和致谢 之处外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得华北电力 大学或其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做 的任何贡献均已在论文中作了明确的说明并表示了谢意。 学位论文作者盛名:独垒 日 期:垒塞! 主,坚 关于学位论文使用授权的说明 本人完全了解华北电力大学有关保留、使用学位论文的规定,即:学校有权保管、 并向有关部门送交学位论文的原件与复印件;学校可以采用影印、缩印或其它复制手 段复制并保存学位论文:学校可允许学位论文被查阅或借阅;学校可以学术交流为 目的,复制赠送和交换学位论文;同意学校可以用不同方式在不同媒体上发表、传播 学位论文的全部或部分内容。 ( 涉密的学位论文在解密后遵守此规定) 作者签名:玄煎 日期:垒金:i ,! 生 导师签名: 华北电力大学硕十学位论文 1 1 课题研究背景及意义 第一章引言 随着信息技术的迅猛发展,特别是互联网技术的普及应用,现代企业所面临的 环境日趋复杂,对信息管理的要求也越来越高,尤其是对于分级管理的集团化企业 显得尤为突出。为了适应需求,一些大型的集团化企业开始选择建设一体化信息集 成平台来解决各级部门之间由于自身系统的独立、异构或者封闭而造成的无法进行 信息共享和业务处理等问题,使大量的资源能充分发挥应有的作用,形成网络业务 的交互、共享和协同。 作为关系到国家能源安全和国民经济命脉的国有重要骨干企业,国家电网公司 的信息化建设起步于上世纪6 0 年代,几度潮起潮落,既有成绩,也有困惑。一方 面是各种基础设施和应用软件在不断升级换代,另一方面随着建设水平不断提升, 一些单位和部门从各自的需求出发,建立了各自不同的信息管理系统。由于缺乏统 一规划,这些信息系统之间相互缺乏关联,信息资源难以共享,因此形成了越来越 多、大大小小的“信息孤岛”。为摆脱这一困境,专家认为,只有在把握企业信息 化发展规律的基础上,加强应用建设和资源整合,联通“孤岛,搭建起统一高效 的信息平台,才能更好地满足企业现代管理的要求。 正是基于这样的认识,2 0 0 6 年4 月2 9 日,国家电网公司提出了在全系统实施 “s g l 8 6 工程 的规划。根据规划,“s g l 8 6 工程 将实现四大目标:一是建成“纵 向贯通、横向集成 的一体化企业级信息集成平台,实现公司上下信息畅通和数据 共享;二是建成适应公司管理需求的八大业务应用,提高公司各项业务的管理能力; 三是建立健全规范有效的六个信息化保障体系,推动信息化健康、快速、可持续发 展;四是力争到“十一五 末,公司的信息化水平达到国内领先、国际先进,初步 建成数字化电网、信息化企业。 “s g l 8 6 工程”是国家电网公司“十一五”信息发展规划的核心任务,其中的 “l ,指的是一体化企业级信息集成平台。这个平台的建设,既源于企业发展的战 略构想,也源于日常的工作需要,公司对其提出了明确的要求和界定:首先是起到 畅通信息渠道的作用。同时平台还承担着促进业务集成,整合已建应用系统,避免 重复建设,降低开发成本,消除信息“孤岛 等作用,并在生产、经营、管理等各 环节实现数据共享,建立企业全局数据字典等一系列作用。因此,一体化企业级信 息集成平台建设的最大价值是:提供一个统一的架构,使得当前及未来的数据和业 务应用可以一致地进行整合与集成,进而统一提供战略性的企业级服务,提供对各 个管理层面的集成化应用。 华北电力大学硕士学位论文 作为企业一体化平台的重要组成部分,数据交换平台尝试从体系结构和实现机 制上来解决企业信息化建设过程中的信息共享问题。数据交换平台选用一个中间件 平台,能够利用统一的方式,解决数据的异构性问题,使不同格式、不同系统中的 数据能够相互交流和转换,进而真正实现跨网络、跨操作系统和跨数据库的异构系 统之间的透明、可靠的数据传输。这大大减少了应用系统问的接口数量,简化了互 访的复杂度,同时也提高了应用数据访问的可伸缩性。因此,能否建立一个高效的 数据交换平台是国家电网公司一体化企业级信息集成平台建设的关键。 1 2 国内外研究现状 数据交换技术到目前大致经历了三个发展阶段: ( 1 ) 以e d i ( 电子数据交换,e l e c t r o n i cd a t ai n t e r c h a n g e ) 技术为基础的电子 数据交换。 ( 2 ) 以多层结构w e b 技术为代表的数据交换。 ( 3 ) 以x m l 等第二代w e b 技术为代表的数据交换。 x m l 技术的出现,为w e b 应用提供了一种严格地描述数据的标准化且跨平台 技术。其中x m l 数据规范为运行于广域网不同节点的应用系统间进行数据交换奠 定了基础,同时w e bs e r v i c e s 又使这些应用程序间进行功能的调用成为可能。w e b s e r v i c e s 采用的s o a p 协议可以基于h t t p 协议通讯,由于h t t p 在网络中广泛应 用,实际上为w e bs e r v i c e s 提供几乎无限的互连成为可能,使其可以轻松地穿越绝 大多数的防火墙,而与x m l 的结合使其具有了数据交换的能力。因此,采用基于 x m l 、w e bs e r v i c e s 技术实现跨越网络异构数据交换,也就成为了理想的数据交换 方式,它使得建设跨网络的协同工作环境成为可能,其先进性毋庸置疑。 当前许多国际知名的大公司纷纷进军数据交换领域,在这一方面已经出现了一 批成熟的产品心1 。如s y b a s e 提出的s y b a s ed x p 数据交换平台为电子政务系统系统 内及系统间的信息交互和共享提供了一个集成化数据交互和共享空间,具有较好的 开放性,可同时满足用户各类平台、数据源及应用间的数据交换需求,为各部门内 及部门间应用系统之间的信息交互和共享提供了一个集成化数据交换空间。 国内在此领域的研究起步比较晚,但是也出现了许多成熟的产品。 ( 1 ) f m q 数据交换平台是一款构架在f m q ( 文件消息队列) 基础上的、易 使用、易管理、高效率的中心控制分布式应用整合平台,可以管理、规范、监控整 个网络的传输。它在网络传输层与用户应用层之间建立强大的数据交换管理层,屏 蔽不同网络系统之间的差异,为各计算机之间、各应用系统之间提供可靠的消息、 文件传输,是一款优秀的集消息中间件、消息传输中间件、文件传输中间件于一身 的数据交换平台产品。 2 华北电力大学硕+ 学位论文 ( 2 ) 中创软件推出的“电子政务数据交换平台解决方案”,是基于中创软件i n f o r 系列中间件技术,结合政府信息化建设现状及发展需求而推出的,使得各政府部门 之间的基础数据共享,让基础数据发挥更大的社会价值,使得政府从宏观上把握经 济运行的整体情况。 ( 3 ) 京华e x s w i t c h 数据交换平台实施非常便利,不需对原有系统进行二次开 发,从数据层进行定制来完成系统之间的互连,而且适应性强,可以对任意平台, 任意数据源,任意业务系统之间的数据进行互连。 ( 4 ) 作为交通部信息化建设系统的基础,交通部数据交换平台的建设为提高 交通行业整体政务管理水平,实现政府职能从管理型向服务型转化起了关键性作 用,并今后交通信息化建设的完善打下了良好的基础。目前,交通部信息化建设可 行性示范工程一道路运输数据交换平台专项,就是构建在交通部数据交换平台上的 数据交换与共享平台,全国3 1 个省级运管机构的道路运输基础信息以及异地稽查 数据等动态信息都将在该平台上运行。 ( 5 ) 信息产业部无线电管理局数据交换系统成功实现了其内部各业务数据, 包括台站管理系统、频率管理系统、和办公自动化等系统数据交换和管理。同时, 结合京华e x g s 电子公文交换系统安全地实现了与下属各省、市机构的公文交换。 1 3 课题研究内容及组织结构 本课题的研究内容是在全面分析国内外成功案例的基础上,总结现有的数据交 换技术,从客观和实效的角度来研究数据交换平台的基本开发方式与框架结构,并 结合国网审计管理系统,阐述该平台在实际应用中的设计和实现方法。 本文主要分为以下几个章节来组织: 第一章阐述了课题的研究背景及意义,并通过对数据交换技术的国内外研究 现状所做的简要对比和分析,列出了本系统研究的主要内容和组织结构。 第二章深入研究了构建数据交换平台所需要的相关技术。介绍x m l 的基本概 念和作为数据交换广泛标准的格式;介绍w e bs e r v i c e s 的基本概念以及其三大核心 技术,基于x m l 标准的s o a p 、w s d l 和u d d i 。 第三章提出了数据交换系统的设计方案。通过对x m l 的数据转换及其与数据 库的交互方式的深入分析,在研究基于x m l 文档转换的基础上,提出了一种基于 x m l 的数据交互方案。 第四章在国网审计管理系统的基础上,深入分析了第三章提出的数据交换模 型在国网审计管理系统中的应用。 第五章总结本文的主要工作并指出不足。 华北电力大学硕士学位论文 第二章数据交换相关技术研究 本章详细阐述和研究了构建数据交换平台所应用到的关键技术一x m l 和w e b s e r v i c e s ,包括x m l 的基本概念以及其相关技术标准,w e bs e r v i c e s 的基本概念和 框架,以及其三大核心技术s o a p 、w s d l 、u d d i 。 2 1x m l 技术研究 2 1 1 简介 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 i cm a r k u pl a n g u a g e ) 的一个子集d 1 。它将s g m l 的丰富 功能与h t m l 的易用性结合到w e b 应用中,以一种开放的、自我描述的方式定义 数据结构。在描述数据内容的同时突出对结构的描述,从而体现出数据之间的关系。 这样组织的数据对于应用程序和用户都是友好的、可操作的。x m l 是以文本形式 来描述的一种文件格式,正是由于这种特性,使其适用于各种平台环境的数据交换。 2 1 2x m l 文档结构 一篇x m l 文档由标记( t a g ) 和内容( c o n t e n t ) 组成,内容记录x m l 数据, 标记表明x m l 数据所表示的意义和各数据问的结构h 1 。整个文档从一个根元素开 始,然后是一些嵌套的元素结构,元素中包含的可以是属性,也可以是子元素,或 者是数据文本。 x m l 是结构化的文档,其中包含元素与元素内的属性。各元素之间呈层次关 系,属性是元素要表达的信息的补充。各元素的层次关系就是x m l 文档包含的数 据的内在关系。正因为这种层次关系,x m l 文档可以较容易被解析。可以构造标 准的x m l 解析器获取x m l 文档中所包含的数据和信息,给x m l 附加d t d ( d o c u m e n tt y p ed e f i n i t i o n ) 文档类型定义或x m ls c h e m e ( x m l 模式) ,并为x m l 增添自我描述性和可扩展性。自我描述性表现在x m l 文档通常包含一个文档类型 说明,不仅人能读懂x m l 文档,计算机也能处理。x m l 文档被看作是文档的数据 库化和数据的文档化。可扩展性允许开发者创建他们自己的文档类型定义,有效地 用于多种应用的“可扩展的标记集。 2 1 3x m l 用户体系结构 x m l 2 0 规范描述了x m l 数据的格式和语法,为处理x m l 数据指定了一个两 4 华北电力大学硕士学位论文 层的用户体系结构:x m l 解析器和x m l 应用层。 第一层是x m l 解析器。解析器检验x m l 文档格式是否正确,并且检验文档 数据结构的合法性。相关的x m l 技术有m s x m l 、d t d 和s c h e m a 等。解析器必 须遵循x m l 规范,并把x m l 数据的内容和结构以规定的方式送到第二层。 第二层是x m l 应用层。应用层涉及对x m l 数据的显示,x m l 数据间转换、 查询以及x m l a p i 。相关的技术有x s l 、x s l t 、x q u e r y 、d o m 、s a x 等。 2 1 4x m l 相关技术分析 尽管x m l 的目的是一种新的数据描述语言,但是仅作为一种元语言是不够的, 重要性是在于对它的使用,包括格式化、类型检验、操作、搜索和查询,所有这些 构成了x m l 的一系列技术,这些技术之间的相互关系如图2 1 所示1 。 吣口沪 图2 - 1x m l 相关技术 下面介绍几种比较重要的技术: ( 1 ) d t d 和s c h e m a x m l 作为一种元标记语言,是一种描述标记语言的语言。创建的新标记语言 ( 也叫标记集) 要通过d t d ( d o c u m e n tt y p ed e f i n i t i o n ,文档类型定义) 或x m l s c h e m a ( x m l 模式) 来定义,即进行有效性校验,检查x m l 文档中的数据是否符 合特定的规则。 d t d 是一套关于x m l 标记符的语法规则。它说明了可以在文档的什么地方使 用哪些标记,它们应该按什么次序出现,哪些标记有哪些属性等。 x m ls c h e m a 也是用来定义x m l 文件的文本结构和数据类型等x m l 文件描述 规则的。但是x m ls c h e m a 不像d t d 那样使用特殊的语法,它本身就是x m l 文档, 因而能用d o m s a x 等对它进行分析。同时,x m ls c h e m a 规定了更丰富的数据类 雪固 华北电力大学硕十学位论文 型,功能更强大,而且使用更灵活。 d t d 是一种比较成熟的模型,拥有广泛的工具支持,在实际应用中被大量使用。 但其缺陷也是不可忽视的,如仅拥有有限的数据类型,使用的是完全不同于x m l 的格式,不能以与x m l 文档相同的方式进行分析处理,不支持名字空间等。相反, 尽管x m ls c h e m a 是一种新的文档描述规则,但其丰富的数据类型,x m l 语法的 使用,名字空间的支持等优点使其越来越成为商业应用在整合x m l 技术时的首选。 x m ls c h e m a 数据格式的定义为异构数据库之间的数据转换提供了便利。同时,它 对数据约束的定义保证了数据的有效性,这在数据交换中也具有重要意义。因此本 系统中采用x m ls c h e m a 作为x m l 文档的约束规则。 ( 2 ) d o m 和s a x x m l 数据实际上就是纯文本数据,使用x m l 数据格式的应用程序首先必须能 对x m l 数据进行分析、读取,进而进行处理。其中d o m ( d o c u m e n t0 b j e c tm o d e l ) 与s a x ( s i m p l e a p i sf o r x m l ) 是两种常用的x m l 应用程序接口标准。 d o m 文档对象模型是公认的w 3 c 标准,它提供了一套应用程序接口a p i ,为 创建、处理和操作x m l 文档内容、结构和样式提供了灵活而有效的方法。d o m 采 用对象模型和一系列的接口来描述x m l 文档的内容和结构,即利用对象把文档模 型化。当其对结构化的x m l 文档进行解析时,文档中的指令、元素、实体、属性 等所有个体都可以用对象模型表示,整个文档的逻辑结构类似一棵树,生成的对象 模型就是树的节点,每个对象同时包含了方法和属性。 s a x 是基于事件的处理器( a p i ) 。解析器将事件发送给处理信息的事件处理程 序,然后应用程序自己可以处理数据。因此,s a x 允许正在读取文档的同时开始处 理该文档,避免了在采取操作之前需要等待存储文档的所有内容。由于应用程序简 单地检查流过的数据,所以不需要将数据存储在内存里。当遇到大文档时,这是一 个突出的优势。 尽管d o m 和s a x 都是x m l 的编程接口,但两者在不同的应用场合具有各自 的特点。d o m 操作时要先将整个x m l 文档装入内存,对系统资源占用很大,且执 行效率很低,适合于结构化编辑x m l 文档。而s a x 恰恰相反j 不需要将整个x m l 文档装入内存,执行效率高,适合大文档,可完成内存不足或文档结构无关的任务。 不过,由于d o m 分析器所采用的树结构思想与x m l 文档结构相吻合,同时鉴于 系统中数据文档不大,且需要以一种灵活的机制对文档进行访问的特点,所以对 x m l 的分析和处理,采用d o m 接口。 ( 3 ) x s l x s l ( e x t e n s i b l es t y l el a n g u a g e ,可扩展样式语言) 是更为先进的专门用于x m l 文档的样式单语言。x s l 文档本身就是结构完整的x m l 文档,包括一系列的适用 于特定的x m l 元素样式的规则。x s l 处理程序读取x m l 文档并将读入的内容与 6 华北电力大学硕十学位论文 样式单中的模式相比较,当在x m l 文档中识别出x s l 样单里的模式时,就会按照 对应的规则输出某些文本的组合。 ( 4 ) x p p a t h 和x q u e r y x m l 提供了在x m l 文档中定位和查询数据的技术,这些技术在数据交换中对 x m l 数据进行操作和处理具有重要作用。 x p a t h 是用于在x m l 文档中定位信息的语言,也可把其视为文件路径,通过 文件路径的规则找到所需要的文件。同样,依据x p a t h 所制定的规则,可以方便地 找到x m l 文档树中的任何一个节点。x p a t h 操作于x m l 文档树之上,使用紧凑的、 非x m l 的语法来选择一个或一组节点,而不是基于标记的语法,这能够区别包括 元素节点、属性节点、文本节点在内的不同类型的节点。 x q u e r y 是为x m l 所设计的、类似于s q l 的查询语言,用于定位和过滤x m l 文档中的元素和文本。x q u e r y 是在x p a t h 上的扩展,为指向特定的元素或查找具 有指定特征的节点设计了简明的可理解的符号。它提供一系列类型和控制结构的编 程环境,能够从x m l 文档和内含x m l 的资料库中查询并获取信息,也因此而逐 渐成为查询x m l 数据库的主流语言。 2 2w e bs e r v i c e s 技术研究 2 2 1w e bs e r v i c e s 概述 w e bs e r v i c e s 是近几年提出的一种新的面向服务的体系结构,是一种基于现有 成熟的i n t e m e t 技术的分布式应用程序技术框架。w e bs e r v i c e 是一种部署在w e b 上的对象,由u r l 进行标识1 。它对外提供一组通过x m l 构件进行定义和描述的 接口,其它应用可以通过基于因特网的协议( 大部分是基于超文本传输协议,即 h t t p ) 及使用基于x m l 的消息与w e b 服务进行交互,w e bs e r v i c e 架构如图2 2 所示n 1 。总的来说,w e bs e r v i c e s 具有如下特点。 ( 1 ) 普遍性:w e b 服务使用h t t p 和x m l 进行通信,因此,任何支持这些技 术的设备都可以拥有和访问w e b 服务。 ( 2 ) 良好的封装性:w e b 服务是一种部署在w e b 上的对象,从封装的粒度来 看,w e b 服务一般封装了一个离散的( 单独的) 功能,对于用户而言,能且仅能看 到w 曲服务提供的功能列表。 ( 3 ) 透明性:当一个w e b 服务的实现发生变更时,w e b 服务的调用者是不会 感受到这一点的,因此对他们来说是透明的。 ( 4 ) 互操作性:任何的w e b 服务都可以与其他w e b 服务进行交互。由于有了 s o a p 这个所有主要供应商都支持的标准协议,因而避免了在c o r b a 、d c o m 和 7 华北电力大学硕士学位论文 其他协议之间转换的麻烦,从而屏蔽了不同软件平台的差异。 ( 5 ) 可描述性和可发现性:w e b 服务中对象界面所提供的功能,以及一些描 述信息,都是使用标准的描述语言来描述的。另外,应用程序以及开发人员能够通 过注册中心查找和定位所需要的w e b 服务。 ( 6 ) 开放性:w e b 服务所有公共协约完全使用开放的标准协议进行描述、传 输和交换。 i1 - i n u x 卜 f l + _ r 1 引d 代e 码l p h i 实现卜 蠡| 罨 f 2 噬 l n t r - 苎 葛 f 1 1 接口叫嚣誉b a 实现i , f 2 i w i n d 。w s l 霹 一 f 1 代码v 码a r现p 毫 臣寸 l u n i x 卜 馨 f 2 图2 - 2w e bs e r v i c e s 架构图 2 2 2w e b 服务的体系结构 w e b 服务是独立的、模块化的应用,能够通过i n t e r n e t 来描述、发布、定位及 调用。一个典型的w e b 服务体系结构描述了三个角色之间的交互,即服务提供者 ( s e r v i c ep r o v i d e r ) 、服务代理者( s e r v i c eb r o k e r ) 和服务请求者( s e r v i c er e q u e s t e r ) , 以及交互过程中涉及到三个操作,即绑定、发布和查找。图2 3 展示了这些操作、 提供这些操作的组件及它们之间的交互。 查挽 u d d i 图2 - 3w e b 服务体系结构图 华北电力大学硕士学位论文 2 2 2 1w e b 服务体系结构中的角色 ( 1 ) 服务提供者( s e r v i c ep r o v i d e r ) :是服务的提供者,主要是负责创建w e b 服务,并且注册该项服务使其在i n t e r n e t 上可见。 ( 2 ) 服务代理者( s e r v i c eb r o k e r ) :为开发者发布新服务或者查找已经存在的 服务提供一个中心位置,以供服务请求者查询,其核心即u d d i 数据库。 ( 3 ) 服务请求者( s e r v i c er e q u e s t e r ) :负责发现并调用服务,通过搜索u d d i 数据库找到所需的服务,然后使用基于x m l 的消息与该服务进行交互。 2 2 2 2w e b 服务体系结构中的操作 对于利用w e b 服务的应用程序,三个角色之间必须发生以下三个行为:发布服 务描述、查询或查找服务描述以及根据服务描述绑定或调用服务。这些行为单次或 反复出现,具体操作为口1 : ( 1 ) 发布:为了让别的应用程序能够访问到所需的w e b 服务,服务提供者必 须将自己所提供服务的描述信息发布给服务请求者或通过注册到u d d i 数据库以供 服务请求者查询调用。 ( 2 ) 查找:有的时候,服务请求者可以直接从服务提供者那里得到服务的描 述信息,从而编写相应的客户端对服务进行调用。但如果服务提供者将服务注册到 u d d i 数据库,那么服务请求者就必须通过向u d d i 发送s o a p 信息来获得服务的 描述文件。 ( 3 ) 绑定:服务请求者需要通过使用服务描述文件中的绑定信息来定位、联 系和调用服务,从而编写相应的客户端与服务进行交互。 2 2 3w e b 服务的核心技术 w e b 服务使用基于x m l 的消息处理作为基本的数据通讯方式,消除使用不同 组件模型、操作系统和编程语言的系统之间所存在的差异,使异类系统能够作为单 个计算网络协同运行。其中,基于x m l 的标准- s o a p 、w s d l 和u d d i 是构建w e b 服务的三大核心技术,图2 4 是w 曲服务体系结构中三种标准所扮演的角色n 1 。 为客户查询注册中心以找到服务的位置 为注册中心引导客户找到w s d l 文档 为客户访问w s d l 文档。 为w b - d l 提供与w e b 服务进行交互的数据。 为客户发送s o a p 捎患请求。 ( 窗w e b 服务返回s o a p 稍患应答。 图2 _ 4w e b 服务交互中的s o a p 、u d d i 和w s d l 9 华北电力大学硕士学位论文 2 2 3 1s o a p s o a p ( s i m p l eo b j e c t a c c e s sp r o t o c 0 1 ) 简单对象访问协议是在分散或分布式的 环境中交换信息的轻量级协议,是一个基于x m l 的协议。s o a p 被置于因特网协 议( h t t p ) 之上,能被用来在w e b 和其他网络上传输数据。由于大多数防火墙可 以接收h t t p 服务请求,所以使得w e b 服务可以轻易穿越防火墙进行通信。 s o a p 规范中定义了s o a p 消息的结构。s o a p 消息是一种特定类型的x m l 文档,包括一个必需的s o a p 封装,一个可选的s o a p 头和一个必需的s o a p 体。 它采用了相应的关键词进行描述,一个s o a p 消息的格式大致是这样的口1 : ( ? x m lv e r s i o n = “1 0 e n c o d i n g = u t f 8 ? ) ( s o a p e n v :e n v e l o p e ) ( s o a p e n v :h e a d e r ) ( s o a p e n v :h e a d e r ) ( s o a p e n v - b o d y ) ( x s d :r e s t r i c t i o n b a s e = “x s d :i n t e g e r ”) ( x s d :m i n i n c l u s i v e v a l u e = “1 ”) ( x s d :m a x i n c l u s i v e v a l u e = “9 9 9 9 ) 1 5 华北电力大学硕+ 学位论文 ( d a t a t y p es o u r c e = “s t r i n g ”) ( 1 e n g t hv a l u e = “2 0 0 ) ( d a t a t y p e ) ( e l e m e n t ) ( e l e m e n tn a m e = “c o l u m n 2 ”t y p e = “d e c i m a l ”) ( e l e m e n t ) ( e l e m e n t ) ( s c h e m a ) 根据关系模式建立的x m ls c h e m a ,保存了关系表之间的关系、字段的数据类 型、数值限制等重要信息。它不但可以作为数据转换时的检验依据,而且可以作为 将来直接向x m l 文档中增加新信息的依据。 3 2 3 关系数据与x m l 文档之间的映射 x m l 文档是与x m l 模式定义的树结构相容的文本。要在x m l 文档和数据库 之间传输数据,必须把文档结构映射到数据库模式,反之亦然。x m l 文档结构是 与x m l 模式相关联的。x m l 模式在描述数据的同时也提供了指定该数据的类型的 途径,从而带来了额外的好处,可指定的类型从简单的基本类型到复杂的结构。 3 2 3 1 映射策略 为了在数据库与x m l 文档之间传递数据,必须在文档结构和数据库结构之间 建立映射,这种映射可分为模板驱动和模型驱动。 基于模板驱动的映射中,不预先定义文档结构和数据库结构之间的映射关系, 而是在数据转换软件的处理模板中嵌入说明命令,常见的是由应用提供一个嵌入了 s e l e c t 语句并用固定标签标识的x m l 文档模板交给中间件等实体软件进行处理, 让数据传输中间件来执行模板,中间件检索标签找到s e l e c t 语句,执行s e l e c t 语句并将返回结果转化为x m l 格式。基于模板驱动的映射是一种浅层映射,但其 比较灵活,甚至可以加入程序逻辑。一个x m l 模板文件可以以( s e l e c t s t m t ) 元素 的形式嵌入s e l e c t 语句,从而使得中间件在执行该模板时检索到这个s e l e c t 语 句并执行该语句。数据传输中间件处理该模板文件时,每个s e l e c t 选项用数据库 1 9 华北电力大学硕士学位论文 的查询结果来替换,形成x m l 文档。作为浅层映射的这种映射形式,以x m l 内 嵌的s q l 执行的数据结果集为依据,不涉及数据库赖以存在的关系模式或对象模 式,因而不支持面向对象数据库或关系数据库和x m l 之间的数据传输。 在模型驱动的映射中,x m l 文档中的数据根据预先定义的模型,显性或隐性 地将模型结构映射成数据库的结构。基于模型驱动实现了数据在数据库和x m l 文 档间的双向传输,关键是在数据库模式和d y d 或s c h e m a 之间建立了双向映射。具 体实现时,把个x m l 文档表示为由数据对象构成的树,每个元素类型和对象模 式中的对象相对应,然后使用传统的对象一关系映射技术将这个模型映射到关系数 据库。 3 2 3 2x m l 与关系数据库的双向映射 数据通过定的x m l 转换和处理从而可以为传统的基于关系模型的数据库所 支持,其中关键的技术在于数据及数据之间关系的映射,即如何处理s c h e m a 与e - r 图的两种模型之间的转换。在数据库模型中,实体和属性之间有着截然不同的严格 区分,这在e r 图中可以很明显地表示出来。然而,在数据转换为x m l 文档的形 式后,怎么为转化的数据建立一种适当的模型,使x m l 可以与原来的e r 模型相 对应,这里采用基于模型的映射方法。 3 2 3 3x m l 文档映射到关系数据库 x m l 文档包含简单元素和复杂元素。复杂元素可以包含属性、子元素,而且 还可以包含多个相同子元素,其中子元素还可以是复杂元素。一般来讲将x m l 文 档转换为关系数据库数据,可以使用如下的映射

温馨提示

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

评论

0/150

提交评论