`
西蜀石兰
  • 浏览: 119186 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

dom4j使用

 
阅读更多

    最近在做的项目内容是接入多个第三方接口,有些第三方接口做的比较早,数据的传输还是xml格式,自然需要对xml文件进行读写,这篇博客准备总结一下xml文件读写相关的内容,语言依旧是java。

    

    对于任何一个文件,都有编码格式,xml文件也不例外;而对于任何一个第三方插件,也会有版本号,xml文件同样也存在。所以,xml文件第一行一般都是这个样子"<?xml version="1.0" encoding="UTF-8"?>"

 

    交代完了共性,下面就是xml文件本身的内容了。xml文件类似多叉树,有且只有一个根节点,每个节点有自己的属性和子节点。

    

    对于一款插件来说,自然要提供对以上元素的CRUD(增删改查)操作,对于每一个操作,可能需要提供多种方式来完成相应的需求。

 

    这篇博客,想实现基础的功能,一些复杂的功能,会在另外一篇博客进行介绍。

    想实现以下一些功能:

    1.能够读写项目的某个xml文件

    2.能够获取某个节点,进行CURD操作

    3.能够获取节点的某个属性,进行CURD操作

 

以下是一个xml文件,使用dom4j进行解析

<?xml version="1.0" encoding="UTF-8"?>
<company name="名称">
	<department id="1" name="武力部">
		攻城略地
		<person name="常遇春">第一猛人</person>
	</department>
	<department id="2" name="行政部">忽悠人
		<person name="朱元璋">大boss</person>
	</department>
</company>

 

    

 

package dom4j;

import java.io.File;
import java.util.List;

import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

/**
 * 
 * explaintion dom4j简单使用
 * 2016年7月4日 下午6:47:59
 */
public class ReadXml {
	@SuppressWarnings("unchecked")
	public static void main(String[] args) throws Exception {
		//插件提供用于读写的类
		SAXReader reader = new SAXReader();
		//java io操作
		File file = new File("source/company.xml");
		//文档类
		Document document = reader.read(file);
		//根据一个文档对象获取根节点
		Element root = document.getRootElement();
		String name = root.getName();
		//获取节点的名称
		System.out.println("节点名称是:"+name);
		
		//以下是对于节点属性的CURD
		//获取节点指定属性名的值
		String attrbuteValue = root.attributeValue("name");
		System.out.println("节点属性名name的值:"+attrbuteValue);
		//增加节点的属性
		root.addAttribute("year", "1");
		Attribute attribute = root.attribute("year");
		//删除节点的属性,只能通过这种方式删除,Attribute需要通过节点以及属性名称拿到
		root.remove(attribute);
		
		//获取节点的文本内容
		String textValue = root.getTextTrim();
		System.out.println("节点的文本内容:"+textValue);
		
		//返回子节点中第一个名为department的节点
		Element element = root.element("department");
		System.out.println(element.attributeValue("name"));
		//对于节点的所有子节点,可以进行如下遍历
		List<Element> elements = root.elements("department");
		for(Element el:elements){
			System.out.println(el.attributeValue("name"));
		}
		
		//删除某个节点
		root.remove(element);
	}

 

分享到:
评论

相关推荐

    dom4j使用手册

    dom4j使用手册;

    dom4j使用简介

    **DOM4J使用简介** DOM4J 是一个强大的 Java 库,专为处理 XML 文档而设计。它提供了丰富的 API,使得在 Java 中解析、创建、修改 XML 文件变得简单高效。DOM4J 不仅支持 DOM(文档对象模型)和 SAX(简单API for ...

    dom4j使用教程+dom4j.jar

    ### 四、DOM4J查询XML 1. **XPath查询**: DOM4J支持XPath表达式进行复杂查询。首先,需要创建`XPath`对象,并使用`compile()`方法编译XPath字符串,然后调用`evaluate()`方法执行查询。 ```java XPath xpath = ...

    dom4j使用与jar包

    **DOM4J使用与JAR包** DOM4J是一个强大的Java库,专门用于处理XML文档。它提供了丰富的API,使得XML的读取、创建、修改和解析变得异常简便。在这个主题中,我们将深入探讨DOM4J的核心功能以及如何在Java项目中使用...

    DOM4J使用详解

    DOM4J是一个强大的Java库,专门用于处理XML文档。它提供了一种灵活且高效的方式来解析、创建、修改和操作XML文档。DOM4J不仅支持DOM模型,还支持SAX和JAXP解析器,使得开发者可以根据需要选择不同的解析策略。 1. ...

    Dom4j使用简介 帮助文档

    ### Dom4j 使用简介 #### 一、Dom4j 概述 Dom4j 是一个易用且功能强大的开源 XML 解析库,适用于 Java 平台。它支持 DOM、SAX 和 JAXP 标准,并且采用了 Java 集合框架进行数据管理。Dom4j 在设计上十分简洁,易于...

    Dom4j 使用指南.rar

    **Dom4j 使用指南** Dom4j 是一个非常流行的Java库,用于处理XML文档。它提供了灵活、高效的方式来解析、创建、操作XML内容。对于学习XML的开发者来说,Dom4j是一个不可多得的工具,因为它的API简洁易用,功能强大...

    dom4j 简单教程

    ### DOM4j 使用详解 #### 一、简介 DOM4j是一种用于处理XML文档的Java库,它提供了灵活且高效的方式来解析、修改和创建XML文件。相比于标准的DOM和SAX API,DOM4j提供了更加简洁易用的API,使得开发者能够更轻松地...

    XSD使用dom4j校验XML

    1. 加载XSD文件:使用DOM4J的DocumentHelper类的parse方法,传入XSD文件的路径,得到一个SchemaFactory对象。 ```java SchemaFactory schemaFactory = DocumentHelper.createSchema(new File("path_to_xsd_file.xsd...

    DOM4J 使用简介.pdf

    #### 四、DOM4J 的应用场景 DOM4J因其出色的性能和灵活性,被广泛应用于各种场景中,包括但不限于: - **Web服务**:在构建RESTful Web服务时,DOM4J可用于解析和生成XML响应。 - **配置管理**:许多软件系统使用...

    DOM4J jar包 xml解析 所有的dom4j-1.6.1 dom4j-2.0.2 dom4j-2.1.1包 导入直接使用

    在项目中使用DOM4J时,只需将相应的jar包(如dom4j-1.6.1.jar、dom4j-2.0.2.jar或dom4j-2.1.1.jar)导入到类路径中,即可开始利用其功能处理XML文档。导入后,可以按照DOM4J提供的API进行编程,快速实现XML的读写...

    dom4j中XPath用法

    要使用DOM4J的XPath功能,首先需要引入DOM4J库和JAXP(Java API for XML Processing),后者提供了XPath的实现。在Java项目中,这通常通过添加对应的依赖完成。例如,在Maven项目中,可以在pom.xml文件中加入以下...

    Dom4j使用简介

    Dom4j使用简介,日志 开发java必看,初级高级开发必看

    dom4j使用教程

    下面将详细讲解DOM4J的主要特性和使用方法。 ### 1. DOM4J的基本概念 - **Document**: XML文档的根节点,表示整个XML结构。 - **Element**: 表示XML文档中的元素,每个元素都有一个标签名,可以包含属性和子元素。...

    DOM4J 的使用

    DOM4J 的使用 DOM4J 是一个开源的 XML 解析包,由 dom4j.org 出品,应用于 Java 平台,采用了 Java 集合框架并完全支持 DOM、SAX 和 JAXP。DOM4J 的主要特点是使用大量的接口,所有主要接口都在 org.dom4j 里面定义...

Global site tag (gtag.js) - Google Analytics