使用 dom4j 实现删除节点的操作| 学习笔记

简介: 快速学习使用 dom4j 实现删除节点的操作。

开发者学堂课程【XML入门 :使用 dom4j 实现删除节点的操作】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/37/detail/867


使用 dom4j 实现删除节点的操作

 

内容介绍

一、删除第一个 P1 下的<school>ecit</school>

二、总结步骤

 

一、删除第一个P1下的<school>ecit</school>

首先添加一个需求,现在把第一个 P1 下的 school 元素删除,完成删除操作。首先使用 JRT 上的一个最基本的原则(使用父节点把它删除掉)。它的原则与这点是一样的,不能自己删自己,必须通过他的父节点来删除。school 的父节点是 p1,通过 p1 可把它删除。

<person>

<p1>

<name>zhangsan</name>

<school>ecit</school>

<age>20<age>

<sex>nv</sex>

</p1>

<p1>

<name>list</name>

<age>30</age>

</p1>

</person>

这样的操作怎么做?

1. 首先在 Java 创建一个方法,这个方法实现的删除操作。

2. 再写 public static void delSch() throws Exception{}

3. 然后在这里面写上操作步骤。

(1) 得到 document

Docume+nt document= Dom4jUtils.getDocument(Dom4jUtils. PATH);

注意:现在的 Dom4jUtils 是重新写的包里的一个类,需要引入,但 Java 会自动引入(import cn.itcast.utils.Dom4jUtils;),只需要按住 ctrl+shift+o(快速导包)。使用快捷键,可提高开发的速度。

(2) 得到根节点

Element  root = document.getRootElement();

(3) 得到第一个p1元素

Element  p1= P1.element(“p1”);

(4) 得到p1下面的 school 标签

Element  Sch = P1.element(“school”);

(5) 删除 school 元素(注意:通过父节点删除 获取父节点的方法:Sch.getParent,但现在可直接用 p1 删掉 )

p1.remove(sch):

P1 下面只有一个方法,之前在 jrp 学到的方法与这方法有点区别就是 Remove, 它里面有 Element,直接把 Sch 传进来。返回的是 boolean 类型,成功则是 true,失败则是 false。

(6) 回写 xml

Dom4jutils . xmLWriters ( Dom4jUtils.PATH, document) ;

第一个参数传入路径:Dom4jUtils.PATH,第二个传入操作 document。

写好修改代码后,在主函数中添加 delSch();,然后执行。首先看原始文件<school>ecit</school>还存在,运行 Java 文件后,返回 xml 文件,文件中的<school>ecit</school>将会被删掉。

 

二、总结步骤

1、得到 document

2、得到根节点

3、得到第一个 p1 标签

4、得到第一个 p1 下面的 school 元素

5、删除(使用 p1 删除 school)

(1) 得到 school 的父节点:

第一种直接得到 p1,使用方法 getParent 方法得到

(2) 删除操作:

在 p1 上面执行 remove 方法删除节点

6、回写 xml

相关文章
|
1天前
|
XML JavaScript 前端开发
DOM 属性列表(命名节点图 Named Node Map)
这段内容介绍了如何使用JavaScript操作XML文档中的DOM属性。通过`getElementsByTagName`获取元素后,`attributes`属性返回一个命名节点图(Named Node Map),表示元素的属性列表,该列表会自动更新。示例代码展示了加载&quot;books.xml&quot;,获取第一个`&lt;book&gt;`元素的属性列表,然后利用`getNamedItem()`方法获取&quot;category&quot;属性的值并输出,同时显示属性数量。
|
1天前
|
XML JavaScript 数据格式
XML DOM 遍历节点树
该文介绍了如何遍历XML文档的DOM节点树。通过循环节点,可以访问并处理每个元素,如提取值。示例代码展示了加载XML字符串到`xmlDoc`后,遍历根元素的所有子节点,打印出节点名及文本值,例如:&quot;title: Everyday Italian&quot;、&quot;author: Giada De Laurentiis&quot;和&quot;year: 2005&quot;。
|
1天前
|
XML JavaScript 前端开发
XML DOM 节点信息
XML DOM提供nodeName、nodeValue和nodeType属性来揭示节点详情。一个JavaScript示例展示了如何运用这些属性:loadXMLDoc函数加载XML文件&quot;books.xml&quot;,然后通过nodeName获取根元素名,用nodeValue提取文本节点的内容。
|
1天前
|
XML JavaScript 数据格式
XML DOM 节点列表
`getElementsByTagName()` 和 `childNodes` 返回 XML DOM 中的节点列表,表现为按顺序排列的节点集合。节点通过 0 开始的索引访问。例如,以下代码加载 &quot;books.xml&quot;,获取所有 `&lt;title&gt;` 元素的节点列表,然后提取第一个 `&lt;title&gt;` 的文本内容:`xmlDoc.getElementsByTagName(&quot;title&quot;)[0].childNodes[0].nodeValue`,结果为 &quot;Everyday Italian&quot;。
|
1天前
|
XML JavaScript 前端开发
XML DOM 节点信息
XML DOM 节点详解:nodeName、nodeValue 和 nodeType 属性用于获取和操作节点信息。示例展示如何加载XML文件,如books.xml,通过loadXMLDoc函数。nodeName获取元素节点名,nodeValue用于获取或设置文本节点内容,nodeType显示节点类型(如元素:1,属性:2,文本:3,注释:8,文档:9)。每个节点都是可访问和操作的对象,包含方法和属性。
|
1天前
|
XML 存储 JavaScript
DOM 节点列表(Node List)
XML DOM允许访问XML文档的每个节点,提供三种访问方法:getElementsByTagName()、循环遍历和导航节点关系。getElementsByTagName()返回一个节点列表,类似于数组,可用于获取特定标签名的节点。例如,加载&quot;books.xml&quot;后,`xmlDoc.getElementsByTagName(&quot;title&quot;)`会获取所有&lt;title&gt;元素,存储在变量x中。通过索引如x[2]可访问第三个&lt;title&gt;元素,注意索引从0开始。后续章节将进一步探讨节点列表(Node List)。
|
1天前
|
XML JavaScript 数据格式
XML DOM - 导航节点
在XML DOM中,节点导航涉及利用如parentNode、childNodes、firstChild、lastChild、nextSibling和previousSibling等属性。通过这些关系,可以访问和操作XML文档结构。例如,给定一个XML文档,可以使用getElementsByTagName找到特定元素,并通过parentNode属性获取该元素的父节点。在提供的实例中,代码加载&quot;books.xml&quot;,选取第一个&lt;book&gt;元素,并打印出其父节点的名称。
|
1天前
|
XML 存储 JavaScript
XML DOM - 访问节点
`getElementsByTagName()` 方法用于访问 XML 文档中的节点,返回一个节点列表(Node List),类似数组。可通过循环或导航节点关系来遍历和访问这些节点。示例代码加载 &quot;books.xml&quot; 到 xmlDoc,将结果存入变量 x。
|
1天前
|
XML JavaScript 数据格式
XML DOM 遍历节点树
该文介绍了如何遍历XML文档的节点树。通过循环移动,可以访问每个元素并提取其值。示例代码展示了一个XML文档的遍历过程,输出了所有子节点的名称和值,如&quot;title: Everyday Italian&quot;等。首先加载XML到xmlDoc,然后获取根元素的子节点,并依次打印节点名及文本内容。
|
1天前
|
XML 存储 JavaScript
XML DOM - 访问节点
`getElementsByTagName()` 方法从 `xmlDoc` 加载 &quot;books.xml&quot;,创建一个包含匹配节点的节点列表。该列表可遍历以访问每个节点,实现对 XML 文档的节点访问和导航。