基于XML数据交换系统的设计与实现
作者 : 未知

  摘要:为了解决Web环境中异构数据库数据共享和协作问题,提出了基于XML中间件技术实现异构数据库之间信息交换的模型。采用XML技术和JSP技术,设计并实现了异构数据交换系统,实现信息共享和数据格式的统一。
  关键词:XML;关系型数据库;数据交换;JSP
  中图分类号:TP311.131 文献标示码:A 文章编号:1009-3044(2009)26-7336-02
  
  Design and Realize of Data Change System Based on XML
  WANG Zhen-hui
  (College of information engineering, Xi'an Fanyi University, Xi'an 710105, China)
  Abstract: In order to resolve data sharing and collaborate among heterogeneous databases, we come up a mode used for information exchange based XML. We have design and realize data change system based on XML and JSP. It makes information share and unify of data format.
  Key words: XML; RDBMS; Data Change; JSP
  
  随着互联网的迅猛发展,互联网应用已由浏览时代转变为应用时代。由于Web开发方式部署简单,成本低,界面友
  好、易用,已经成为目前主流的开发方式。随之在互联网上运行着各种商务及信息检索系统,但由于后台关系型数据库的选型不同,各应用系统数据相对独立,不能共享,造成“信息孤岛”的存在,为了促进异构数据库[1]之间的通信,采用XML和JSP技术设计实现数据交换系统。
  XML(eXtensible Markup Language)可扩展标记语言的优点使得其迅速成为一个与平台无关、厂商无关的数据格式标准。首先,XML具有跨平台的特性,因而在异构数据库系统中应用XML这一特性解决了平台无关性,同时使异构数据库之间的数据互访成为现实;其次,XML简单、规范,因而对XML的查询简单;另外,XML以文本方式存储,这使得HTTP传输更加容易,同时异构数据库应用能够用Web方式实现,扩大了异构数据库的应用范围;最后,XML的自描述性为描述数据库的全局数据字典提供了简单、快捷、高效的方法[2]。
  JSP是SUN公司推出的动态网页设计技术,,作为XML数据交换系统的实现技术有以下好处,一是JSP网页采用JAVA语言开发,实现了平台无关性,并且保证了系统的安全性。在数据库访问技术中采用JDBC接口可以访问大多数关系型数据库,同时使用JDBC-ODBC桥技术可以访问ODBC数据源,大大增强了系统的可扩展性。
  
  1 设计思路
  
  1.1 结构设计
  XML数据交换系统的结构主要包括三层,即基于Web浏览器的表示层、包含应用服务器和Web 服务器的功能层以及包含XML文档数据库和关系数据库的数据层,其逻辑结构如图1 所示。
  为了在不同的数据库之间正确地交换数据,应保证通讯双方用于交换的数据均通过中间件技术转换为同一种数据,即XML文档。图2是源数据库中的数据经过XML数据集成系统,借助XML文档实现数据交换的原理图。
  1.2 功能设计
  XML数据交换系统的功能同样分为三个层次,第一个层次是数据采集子系统,主要功能是从源关系型数据库获取数据。第二个层次是DB-XML转换系统,主要功能是将源关系型数据库数据转换为XML文档。第三个层次则是建立在各个关联XML文档之上的决策支持与分析子系统,关系数据库查询速度快,支持多用户同时访问,设计了XML-DB转换系统,核心功能是将各异构数据对应XML文档依据对应键值关系合并转换为关系数据库中的多个或一个表,为综合信息检索提供服务,从而实现数据共享。
  
  2 核心技术
  
  2.1 关系数据到XML文档的转换
  将关系数据库的数据转换为XML文档步骤如下:
  1)对应每一个表,创建一个元素。
  2)对表中的每一列,创建一个属性或者是一个只有PCDATA内容的子元素。
  3)根据表中的每一主键/外键关系,创建该表元素的子元素,通过关系表的主键、外键将各元素、子元素串接成树状结构的XML文档,然后合并属性;
  4)删除关系数据库中因规范化而导致的冗余,优化XML文档。
  2.2 XML文档到关系数据的转换
  实现XML文档到关系数据的转换,首先要实现从XML的数据模式到关系数据模式的转换,即将XML数据模式到关系模式的转换方法描述成文本格式的转换标准,当数据交换时依据该转换标准进行转换。
  将XML文档转换为关系数据库数据,我们采用使用下面的映射规则:
  1)简单元素和单值属性直接映射到表的列;
  2)复杂元素形成表,对复杂元素包含的内容分类处理:单值属性和简单子元素映射如1)规则;若是复杂子元素,形成对复杂子元素对象的引用,当该元素形成表后,把这个引用改成PK-FK(这里把用指针连接起来的数据关系改用关系数据库中的Primary keys和Foreign keys之间的等值连接联系起来);若是用*,+形成的多个子元素,则该元素形成一个表,在父元素和子元素的表之间添加PK-FK;
  3)对有多值属性需要创建一个单独的表来存储这些值,包含FK,其与包含它的父元素所在表的PK形成连接。
  2.3 JDOM处理XML数据
  JDOM是基于树操作的纯Java API,应该说它提供的是一套用于解析、创建、处理和实现XML的解决方案。这些API比DOM和SAX API提供的方法更为直观,对于有Java经验的程序员将会发现JDOM非常容易掌握。在JDOM中,提供了DOMOutputter、XMLOutputter,用于处理JDOM树的DOM树形式、XML文件形式输出、打印等,JDOM处理XML的方式比DOM容易的多,并且它的功能比使用SAX更加强大。
  在XML集成系统中采用JSP中的JAVABEAN组件来封装对XML的读写操作,JAVABEAN作为逻辑层,JSP作为表示层,做到了代码的复用。
  源关系数据和目标关系数据转换流程:
  1)制定全局数据表来保存源数据及目标数据中字段类型的对应关系和表之间的关联。
  2)定义作为系统转换中介的标准XML文件格式。
  3)利用JAVABEAN组件、JDBC接口和JDOM包,进行数据转换工作。
  
  3 结束语
  
  Web应用主要是实现资源共享,公司内部涉及到多个应用系统之间的数据交换和共享。XML 简单、开放、可扩展、内容与应用分离,已经成为事实上的网络数据交换标准。本文结合企业实际需求,构建了基于XML的数据交换系统,使用XML数据标准解决了互联网应用中数据共享的难题,同时结合JSP技术提高了系统平台移植能力,为开发者提供了异构数据转换方法。
  
  参考文献:
  [1] 马淑娇,李晓,周俊林.异构数据库集成中的XML技术探讨[J].计算机应用研究,2004(1):94-96.
  [2] 孙冬冬,张景,李军怀,等.基于XML,SOAP的企业应用集成技术[J].计算机工程与应用,2003(31):205-207.
  [3] 唐晓波,黎朝辉.XML Web 服务在电力企业信息系统集成中的应用框架[J].华中电力,2004(17):8-10.
  [4] 史小宏,张锦.XML中运用ADO的数据存取技术[J].微型电脑应用,2003(19):58-59.

文秘写作 期刊发表