基于XML的数据交换技术在校园网应用中的实现

来源 :硅谷 | 被引量 : 0次 | 上传用户:gaozhl
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘要]以数字化校园建设作为背景,基于XML在集成异构数据源、数据的多种显示等方面的重要应用,探讨数字化校园建设中的不同平台/系统之间的数据交换及信息的处理和发布等方面的重要技术及解决方法。
  [关键词]校园网 XML 数据交换
  中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0420052-01
  
  数据处理是数字化校园网建设的核心部分。在数字化校园网的建设中,可以用XML统一表示来自不同数据源的数据,来实现学校各部门之间以及部门内部各系统间的数据共享、数据交互。但是XML文档本身只是一个文本文件,它需要能识别XML格式化信息的解析器来解析并提取其中的内容。
  在J2EE架构中,有两种基本方式对XML数据进行解析并读入到某个对象模型中,它们是DOM方式和SAX方式。DOM和SAX是两种最流行的应用于XML的编程API,这两种技术的根本差别在于客户应用程序得到XML文档数据的方式不同。SAX是事件驱动模型,这就意味着解析器识别出文档特性时,客户应用程序不断接到通知。相反地,DOM模型是基于对象的,整篇XML文档作为分层次排列的对象来解析和存储,客户应用程序可以随机访问这些对象。
  在应用程序的开发过程中,应用程序不是直接对XML文档进行操作的,而是首先由XML解析器对XML文档进行解析,然后,应用程序通过XML解析器所提供的DOM接口或SAX接口对解析结果进行操作,从而间接地实现了对XML文档的访问。
  我们在进行数字化校园的系统开发时,根据具体的情况分别用到这两种解析器,下面对这两种解析器的解析步骤和相应的操作进行介绍。
  
  一、基于DOM API的数据处理
  
  (一)使用DOM解析XML文件
  为了使用XML文件中的信息,必须解析文件以创建一个Document对象。在javax.xml.parsers中,jdkl.4提供的DoumentBuilder和DocumentBu
  -ilderFactory组合可以对XML文件进行解析,转换成DOM文档。Document对象是一个接口,因而不能直接将它实例化;一般情况下,应用程序会相应使用一个工厂。
  具体的解析步骤如下:
  1.创建一个解析器工厂,以利用这个工厂来获得一个具体的解析器对象。
  2.创建DocumentBuilder对象,这个对象代表了具体的DOM解析器。
  3.解析XML文件以创建Document对象。
  这样就创建了一个XML的DOM文档树,然后可以开始构建应用程序来对DOM的文档树进行访问了。利用DOM,开发人员可以进行动态地创建 XML文档、遍历结构、添加、修改、删除内容等操作。DOM面向对象的特性,使人们在处理和XML解析相关的事务时节省大量精力,是一种符合代码重用思想的强有力的编程工具。
  (二)基于DOM API的节点编辑
  在对XML文档进行解析并获得XML文档的Document对象后,就可以开始构建应用程序来对DOM的文档树进行访问了。目前Sun公司推出的jdkl. 4测试版中的java API遵循了DOM level 2 Core推荐接口的语义说明,提供了相应的Java语言的实现。在rg. xml. dom中,jdkl. 4提供了Document,DocumentType,Node,NodeList,Element,Text等接口,这些接口均是访问DOM文档所必须的。我们可以利用这些接口创建、遍历、修改DOM文档。
  
  二、基于事件的数据处理
  
  (一)SAX解析步骤
  SAX在读取XML流的同时处理它们,而分析这个代码片断的SAX处理器一般情况下将产生以下事件:startDocument、endDocument、startElement、endElement和characters。SAX API允许开发人员捕捉这些事件并对它们做出反应。
  SAX处理涉及以下几步:
  1.创建事件处理程序。
  2.创建SAX解析器。
  3.将事件处理程序分配给解析器。
  4.解析文档,同时向事件处理程序发送每个事件。
  (二)事件驱动的文档解析实例
  SAX解析器对XML文档进行解析,将要使用的部分数据提取到应用程序,为了保存数据以便其他程序能够调用数据,我们可以采用Java提供的散列表类Hashtable来保存解析XML文件后的所有节点名字以及节点的数据值。哈希表HashTable是从Dictionary派生出来的,它具有一系列的关键字和数值,一个关键字对应一个数值,识别主要是通过对象的哈希代码hashCode识别。
  程序中使用Hashtable类存储数据时,首先要用Hashtable()创建一个散列表对象,然后使用put()方法将数据填入该对象中,查询数据可以使用get方法。
  
  三、数据交换流程的设计
  
  XML为在不同的数据库之间传递信息提供了理想的机制。从本质上讲,数据库是专有的,即每个数据库有不同的元素命名结构,不同的规格化级别,甚至描述枚举信息的方法也不尽相同。利用DOM/SAX能够简化各种数据库之间信息传递的方式。通过将DOM/SAX作为公共的传输机制,每个数据库只需要以XML作为中介导入和导出即可。
  用XML作为数据交换的中介,系统可以屏蔽掉后台的多种数据源,用统一的XML文档呈现给用户。接收数据方根据数据XML文档的类型可以对数据XML文档进行任意的业务处理。在数字化校园建设中,为了使基于XML的业务数据交换成为可能,就必须实现数据库的XML数据存取,并且将XML数据同应用程序集成,进而使之同现有的业务规则相结合,并且加以利用,从而完成学校各部门之间以及学校与教育主管部门之间的交换数据,实现教务数据的上传下发,真正使教育信息化成为一体化应用,不再是信息孤岛。
  开发基于XML的动态应用(如动态数据交换、动态信息发布),就是要能从数据库中取出需要交换的数据,并动态产生XML文档在各个应用程序之间传递,不同应用系统中不同语言编写的应用程序就可正确识别和解析文档中的数据,实现数据的动态交换。
  以上是在基于XML的数据交换技术在校园网中进行共享数据的一种解决思路,希望能够抛砖引玉,寻求一种更好的解决方案。
  
  参考文献:
  [1](美)Natanya Pitts,徐晓梅、龚志翔、王晓云等译,XML技术内幕,北京:机械工业出版社,2002.
  [2]章明、许青松、沈锡臣,基于XML的数据交换共享平台模型,清华大学学报(自然科学版),2003.01.
其他文献
[摘要]总结教学经验的基础上,向初学者介绍几个容易忽视但是也是比较实用的几个小技巧。  [关键词]Access数据库 数据交流 压缩 表分析器  中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0420038-01    现在一般的高校都不开设Access数据库课了。绝大部分的高校都在开设SQL、oracle等。但是Access数据库还是存在的,作为一个功能强大的数据库管理
期刊
[摘要]Web数据挖掘是数据挖掘技术在Web信息集合上的应用,Web数据具有本身的特点,Web数据挖掘可以分为三类,各自有其相关技术,Web数据挖掘技术有着广泛的应用,而且随着Internet的不断发展,必将有着更加开阔的应用前景。  [关键词]数据挖掘 内容挖掘 结构挖掘 日志挖掘  中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0420044-01    数据挖掘(D
期刊
[摘要]随着身份管理重要性不断提升,身份联邦、面向架构服务(SOA)以及Web2.0等理念已经被注入到身份管理[5],企业系统面临着进化,传统的身份管理的架构和基于SOAP的身份管理模块在实现进化的需求上都存在着或多或少的限制。将以作者在IBM公司参与开发的某企业管理系统为项目背景,讨论如何将REST[1]风格架构应用到身份管理系统之中。  [关键词]REST 身份管理 Web Service S
期刊
[摘要]不同的数据库管理系统提供的封锁类型、封锁协议、达到的系统一致性级别不尽相同,但其依据的基本原理和技术是共同的。通过对melinets图书管理系统死锁问题的研究,分析了SYBASE数据库锁的机制,提出了预防死锁的几种措施,并给出了解除死锁的相关方法。  [关键词]melinets sybase 死锁  中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0420041-0
期刊
[摘要]目前Unix和Linux系统被广泛应用于各种行业的关键业务中。一旦出现管理员用户密码遗失的情况,将给系统及核心业务造成安全隐患和数据损失。以当今主流的Unix和Linux系统为范例,总结一套解决管理员用户密码遗失的方案。  [关键词]Unix Linux root AIX Solaris IRIX RedHat  中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)04
期刊
[摘要]随着信息时代的发展,在线学习已经成为了学习的主要途径之一。根据Web应用程序设计的三层模型,提供一个基于ASP.NET框架的多媒体在线学习平台的完整实现方案。   [关键词]ASP.NET C# 三层模型 数据库操作类 实体-关系模型  中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0420047-01    一、引言    在网络上各种各样的学习资源中,传统的文
期刊
[摘要]介绍利用微软公司推出的Visual Basic 6.0中MSCOMM.OCX控件进行串行通信的方法。以VB为开发工具实现了PC机与FX系列PLC的串行通信。介绍VB进行串口通信的基本方式和三菱可编程控制器之间的通信的程序设计,主要介绍利用MSCOMM.OCX进行串行通信的设计方法。  [关键词]PC机 PLC 串行通信 Visual Basic 6.0  中图分类号:TP3文献标识码:A文
期刊
[摘要]随着互联网的发展与普及,与因特网应用相关的技术也得到快速发展,与此相关的VoIP技术及软交换技术也越来越受到人们的关注。呼叫中心技术也相应的跨入第四代基于IP的呼叫中心系统。此类呼叫中心可以最大限度地整合整个企业的呼叫中心资源,更利于管理与资源共享。提出一种基于VoIP技术的企业级呼叫中心的完整解决方案的设计与实现。本系统是基于Cisco的IP通信平台来实现的,可以很好的满足企业如银行客服
期刊
[摘要]通过研究CSS层叠样式表的主要思想,结合具体实例介绍如何在网页设计中使用样式表的方法,使读者准确掌握CSS技术,并可进行实践运用。  [关键词]CSS 网页 级联样式表 HTML  中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0420048-01    一、引言    CSS是一种样式表(stylesheet)技术。也有的人称之为层叠样式表  (Cascadin
期刊
[摘要]在综合自动化变电站改造工程设计过程中,随着网络技术的发展、智能化电气的发展,特别是智能化开关、光电式互感器等机电一体化设备的出现、新的规程规范和标准的应用,变电站自动化技术即将进入数字化新阶段。分析110kV综合自动化变电站改造工程在设计过程中应用新技术、新标准及规范、新产品的方法。  [关键词]综合自动化变电站 改造 数字化 设计分析  中图分类号:TM7文献标识码:A文章编号:1671
期刊