Java对XML的解析技术.docVIP

  • 6
  • 0
  • 约2.78万字
  • 约 27页
  • 2017-02-09 发布于重庆
  • 举报
Java对XML的解析技术

Java对XML的解析技术 应用指南 版本1.0 郑州蜂鸟科技有限公司 周源 郑州软件开发兴趣小组群 目录 XML简介 3 1.1 概述 3 1.2民间盛行的四种对XML的解析方式 3 二、 预备知识 3 1.1 有关文档对象模型(DOM) 4 1.2 对DOM操作的各种招式 5 三、 实例解析XML 6 3.1 前情提要 6 3.2 DOM方式解析XML 8 3.3 DOM4J方式解析XML 16 四、 结束语 26 XML简介 .1 概述 XML(Extensible Markup language)在世界上的应用广泛性就如同眼镜在程序员中应用广泛性一样,它与HTML一样,都出生于SGML,可用于简单的数据存储。对我们即将要学习如何在Java中使用它的同志们来说,有一个很好的消息要告诉大家:它很简单易学。 与数据库老大们(Acess,SQL, Oracle)不同,这些老大们提供了非常强大的数据分析、操作和存储能力,例如:索引,排序,增删改查,存储过程,游标,触发器等,XML能做到的,仅仅是展示和结构化数据信息而已,但是呢,“非常简单”使他与众不同。 在J2EE开发中,我们经常会看到他们那苗条的身影:启动Tomcat初始化配置文件的时候,以及著名的struts,hibernate,spring框架中,他们是如何解析这些配置文件又是如何把他们转化为对象随心所欲的使用的呢?下面,我们就掀开她们的盖头,欣赏一下她们的容颜。 民间盛行的四种对XML的解析方式Java生活中我们经常需要对XML进行解析以方便我们对数据进行操作,下面介绍在民间盛行的四种使用Java解析XML的方法,其中重点介绍DOM方式和DOM4J方式。DOM(JAXP Crimson 解析器):W3C为HTML和XML分析器制定的标准接口规范,基于树,可随机动态访问和更新文档的内容、结构、样式。 SAX(simple API for XML):不是W3C的标准,而是由XML-DEV邮件列表成员于1998年为Java语言开发的一种基于事件的简单API。基于事件,逐行解析,顺序访问XML文档,速度快,处理功能简单。 JDOM:鉴于DOM的低效率,而SAX又不能随机处理XML文档,Jason Hunter与Brett McLaughlin于2000年春天,开始创建一种能充分体现两者优势的API——JDOM(Java-based DOM,基于Java的DOM),它是一个基于Java的对象模型,树状结构,能使读取、操作和写入XML文档,比DOM更高效,比SAX更强大,但由于使用了大量的类而不使用接口导致灵活性降低。 DOM4J:DOM4J是一个易用的,开源的库,用于XML,XPath,XSLT。它应用于Java平台,采用了Java集合框架并完全支持DOM,SAX,JAXP。它提供了大量的接口,因此比JDOM更具有灵活性。。…/company 属性节点(Attribute) XML标记元素的属性 name=”ntcsoft” 文本节点(Text) 包括在XML标记中的文本段 工程师A 文档类型节点(DocumentType) 文档类型声明 ﹤!DOCTYPE…﹥ 注释节点Comment XmlComment类注释节点。 !—文档注释( 表2-1 节点关系:下面我们从一个XML文档实例中了解一下各个节点之间的关系: company name=ntcsoft departmentemployee position=developer工程师A/employee/department department name=education/department /company 通过上面的XML文档,我们构建出如下树状文档对象模型,如图2-1所示: 图 2-1 对DOM操作的各种招式 常用节点属性如表2-2所示: 属性 描述 nodeName 结点名称 nodeValue 结点内部值,通常只应用于文本结点 nodeType 节点类型对应的数字 parentNode 如果存在,指向当前结点的父亲结点 childNodes 子结点列表 firstChild 如果存在,指向当前元素的第一个子结点 lastChild 如果存在,指向当前元素的最后一个子结点 previousSibling 指向当前结点的前一个兄弟结点 nextSibling 指向当前结点的后一个兄弟结点 attributes 元素的属性列表 表 2-2 常用节点方法如表2-3所示: 操作类型 方法原型 描述 访问节点 getElementById(id) 根据ID属性查找元素节点 getElementsByName(nam

文档评论(0)

1亿VIP精品文档

相关文档