dom4j 学习总结

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.

了解xml-dom模型,对于学习dom4j有很大的帮助。dom4j用于读写xml文件,是xml文档的一种解析方式。(xml文档的一种解析方式还有dom、sax、jdom)。

DOM(document Object model)将xml文档中的元素、属性、文本等都封装成了节点对象,从而更加容易操作这些节点。DOM本身就是对外暴露的一套API。

读写XML文档主要依赖于org.dom4j.io包,其中提供DOMReader和SAXReader两类不同方式,而调用方式是一样的。

----------------获取内容------------------------

获取xml文档对象Document。

File xmlFile = new File(“test.xml”);

SAXReader reader= new SAXReader();

Document xmlDoc= reader.read(xmlFile);

获取根元素对象

Element root = xmlDoc.getRootElement();

获取根元素名称

String elementName = root.getName();

获取直接子元素对象  通过元素名称获取元素对象

Elementelement = root.element(“元素名称");

获取所有直接子元素对象集合

ListelementList = root.elements();

获取元素对象中的文本    获取element元素的内部文本

Stringtext = element.getText();

获取element子元素内部文本

Stringtext = element.elementText(“子元素名称”);

获取元素属性对象  通过属性名获取元素属性对象

Attribute   attribute = element.attribute(“属性名称");

通过索引获取属性对象

Attribute  attribute = element.attribute(0);

获取所有属性对象集合

List  attributeList = root.attributes();

获取属性值  通过属性对象

String value =attribute.getValue();

通过元素对象

String  value = element.attributeValue(“属性名称”);

-------------------------------------------------------------------------------------

------------------------变动内容---------------------------------------------------

创建文档Document

Document  document = DocumentHelper. createDocument();

创建元素

Element  element = document.addElement(“元素名称");

创建属性

element.addAttribute(“属性名”,“属性值");

添加属性方法返回的是原元素对象。如同StringBuffer。

创建文本

element.addText(“文本");

删除节点

remove(Element element)

remove(Attribute attribute)

remove(Text text)

remove(Node node)

Node接口的子类对象都可以移除

注意:remove是移除直接子节点时使用parentElement.remove(childElement);

时间: 2024-11-13 08:16:40

dom4j 学习总结的相关文章

dom4j学习总结(一)

dom4j学习总结(一) (一)创建Document的基本操作 /**  * xml基本操作  */ public void BaseOperation(){  //创建一个document  Document document=DocumentHelper.createDocument();  //创建根结点  Element root=document.addElement("root");  //为根结点添加一个book节点  Element book1=root.addElem

dom4j学习

在使用xml读写的过程中,用到了dom4j,也算是一个比较主流的xml包了,在使用的过程中,将学习经历记录一下,以后查阅也比较方便. 首先是在pom中添加依赖,在Maven的中心库搜索后选择了该包: <dependency> <groupId>dom4j</groupId> <artifactId>dom4j</artifactId> <version>1.6</version> </dependency> 添

dom4J 学习

Java给我们提供了标准的W3C接口实现,已完成对XML的处理.主要有两大类,分别是DOM操作,SAX解析.DOM可以将XML加载到内存中,对XML进行方便的增删查改.由于是将整个XML都加载到内存中,所以一般说来只适合于处理比较小的XML文件.而SAX方式克服了DOM的对文件大小限制,它采用先序的方式遍历整个XML文件.也就是说SAX是有一定的顺序的执行的,一个节点一个节点的加载.这样即使XML文档很大,但不需要将其整个加载到内存中,所以SAX可以处理较大的XML文件.但SAX的缺点是不能对X

Dom4j学习笔记

一.Loading XML Data 以下代码从File中或一个URL中读取一个XML文件,并产生一个Document对象.一个Document对象表示了内存中的一棵XML树,可以在这个XML树中进行遍历.查询.修改等操作. import java.io.*;import java.net.*;import org.dom4j.Document;import org.dom4j.DocumentException;import org.dom4j.io.SAXReader; public cla

学习笔记(十)Listener

7. HttpSessionActivationListener 1). 监听实现了该接口和 Serializable 接口的 Java 类的对象随 session 钝化和活化事件 > 活化: 从磁盘中读取 session 对象  > 钝化: 向磁盘中写入 session 对象  > session 对象存储在tomcat 服务器的 work\Catalina\localhost\contextPath 目录下. SESSION.SER 2). 该监听器不需要在 web.xml 文件中进

计算机科学精彩帖子收集

inux源码 LXR 源自"the Linux Cross Referencer",中间的"X"形象地代表了"Cross".与 Source Navigator 类似,它也是分析阅读源代码的好工具.不同的是,它将源代码借助浏览器展示出来,文件间的跳转过程成了我熟悉的点击超链接动作. http://lxr.linux.no/   LXR安装过程简介 linux手册 http://linux.die.net/man/ Linux每周新闻 http:/

java Element类的用法

1 此类是用来构建xml中节点的.方法举例: 2 //构建 XML Document 报文 3 private String createLoginXML( String serialNo, String reqTime, String userID, String userPWD){ 4 String retStr = null; 5 Document reqData = null; 6 try{ 7 DocumentBuilderFactory docFac = DocumentBuilde

java学习之dom4j 对 xml的读取

在BS中已经学习了关于XML的知识,但是一直对于XML的理解是"不重要","有没有都可以".但是在没有xml的日子里,程序员想进行进程间数据传递,必须自己设计传输接口,里面牵涉到很多烦人的数据格式等问题,使得程序员不能专注于具体业务的解决.如今xml和各种语言对xml的支持包,把程序员解脱出来了. 了解了XML再来说说关于dom4j的知识吧.dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的.dom4j是一个十分优秀的JavaXML AP

J2EE学习之路---SAX与DOM4J

什么是SAX SAX,全称Simple API for XML,既是一种接口,也是一种软件包.它是一种XML解析的替代方法.SAX不同于DOM解析,它逐行扫描文档,一边扫描一边解析.由于应用程序只是在读取数据时检查数据,因此不需要将数据存储在内存中,这对于大型文档的解析是个巨大优势.我们将在dom4j的学习中使用到SAX,于是先对SAX进行了解. 如何使用SAX 与之前学习的DOM中解析器创建方法类似,利用工厂模式和单例模式的结合,创造出一个解析器的实例.下面是打开一个XML文件的示例代码: S