2011年计算机二级考试JAVA知识点整理(74)计算机二级考试
文章作者 100test 发表时间 2011:02:28 23:17:58
来源 100Test.Com百考试题网
3.2 Dom4j 使用简介
DOM4J是dom4j.org出品的一个开源XML解析包,它的网站中这样定义:
Dom4j is an easy to use, open source library for working with XML, XPath and XSLT on the Java platform using the Java Collections Framework and with full support for DOM, SAX and JAXP.
Dom4j是一个易用的、开源的库,用于XML,XPath和XSLT。它应用于Java平台,采用了Java集合框架并完全支持DOM,SAX和JAXP。
DOM4J使用起来非常简单。只要你了解基本的XML-DOM模型,就能使用。然而他自己带的指南只有短短一页(html),不过说的到挺全。国内的中文资料很少。因而俺写这个短小的教程方便大家使用,这篇文章仅谈及基本的用法,如需深入的使用,请……自己摸索或查找别的资料。
之前看过IBM developer社区的文章(参见附录),提到一些XML解析包的性能比较,其中DOM4J的性能非常出色,在多项测试中名列前茅。(事实上DOM4J的官方文档中也引用了这个比较)所以这次的项目中我采用了DOM4J作为XML解析工具。
在国内比较流行的是使用JDOM作为解析器,两者各擅其长,但DOM4J最大的特色是使用大量的接口,这也是它被认为比JDOM灵活的主要原因。大师不是说过么,“面向接口编程”。目前使用DOM4J的已经越来越多。如果你善于使用JDOM,不妨继续用下去,只看看本篇文章作为了解与比较,如果你正要采用一种解析器,不如就用DOM4J吧。
它的主要接口都在org.dom4j这个包里定义:
AttributeAttribute定义了XML的属性
BranchBranch为能够包含子节点的节点如XML元素(Element)和文档(Docuemnts)定义了一个公共的行为,
CDATACDATA 定义了XML CDATA 区域
CharacterDataCharacterData是一个标识借口,标识基于字符的节点。如CDATA,Comment, Text.
CommentComment 定义了XML注释的行为
Document定义了XML文档
DocumentTypeDocumentType 定义XML DOCTYPE声明
ElementElement定义XML 元素
ElementHandlerElementHandler定义了 Element 对象的处理器
ElementPath被 ElementHandler 使用,用于取得当前正在处理的路径层次信息
EntityEntity定义 XML entity
NodeNode为所有的dom4j中XML节点定义了多态行为
NodeFilterNodeFilter 定义了在dom4j节点中产生的一个滤镜或谓词的行为(predicate)
ProcessingInstructionProcessingInstruction 定义 XML 处理指令.