JDOM(Java Document Object Model):java文档对象模型.http://www.jdom.org
DOM被设计为用于完成几乎所有的XML操作任务,同时它又是与语言无关,这就导致DOM的API庞大而复杂。为了给JAVA程序员提供一套简单易用的操作XML的API,java技术专家Jason Hunter和Brett McLaughlin创建了JDOM。
JDOM利用Java语言的优秀特性,包括方法重载,集合,反射以及JAVA程序员熟悉的编程风格,极大的简化了对XML文档的处理。
和DOM类似,JDOM也使用对象树来表示XML文档:
<name>张三</name>
要想得到“张三”这个文本节点,在DOM中:
String content = element.getFirstChild().getNodeValue();
在JDOM中:
String content = element.getText();
注意:JDOM使用SAX解析器(例如Apache的Xerces),默认JDOM使用JAXP来选择解析器。JDOM还可以接收W3C DOM格式的内容,同时,JDOM也提供了从JDOM树到SAX事件流或W3C DOM树的输出机制。
JDOM实例一:JDOM的API使用
JDOMTest.java
import java.io.IOException;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.ProcessingInstruction;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;
public class JDOMTest {
public static void main(String[] args) {
//1.先创建一个空的文档对象
Document doc = new Document();
//2.得到处理指令对象
ProcessingInstruction pi = new ProcessingInstruction(
"xml-stylesheet","type='text/xsl' href='student.xsl'");
//3.添加到文档对象中
doc.addContent(pi);
//4.设置根节点
Element root = new Element("students");
doc.setRootElement(root);
//5.设置文本节点
Element eltStu1 = new Element("student");
Element eltName1 = new Element("name");
Element eltAge1 = new Element("age");
eltName1.setText("张三");
eltAge1.setText("18");
//6.将文本节点添加到元素节点<student>下
eltStu1.addContent(eltName1);
eltStu1.addContent(eltAge1);
eltStu1.setAttribute("sn","01");
//7.将<student>添加到<students>下
root.addContent(eltStu1);
//8.构造输出流
XMLOutputter xmlOut = new XMLOutputter();
//9.设置XML输出的外观
Format fmt = Format.getPrettyFormat();
fmt.setIndent(" ");//四个空格
fmt.setEncoding("gb2312");
//10.设置格式与输出相关
xmlOut.setFormat(fmt);
try {
xmlOut.output(doc, System.out);
} catch (IOException e) {
e.printStackTrace();
}
}
}
JDOM实例二:对students.xml节点的添加/删除/修改
JDOMConvert.java
import java.io.File;
import java.io.IOException;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;
public class JDOMConvert {
public static void main(String[] args) {
//1.构件SAXBuilder
SAXBuilder saxBuilder = new SAXBuilder();
try {
//2.返回DOC对象
Document doc = saxBuilder.build(new File("students.xml"));
//3.构建元素对象
Element eltStu = new Element("student");
Element eltName = new Element("name");
Element eltAge = new Element("age");
//4.设置文本节点值
eltName.setText("王五");
eltAge.setText("11");
//5.把名称跟年龄添加到<student>下
eltStu.addContent(eltName);
eltStu.addContent(eltAge);
eltStu.setAttribute("sn","03");
//6.构建根元素
Element root = doc.getRootElement();
//7.把<student>添加到根元素下
root.addContent(eltStu);
//删除功能
root.removeChild("student");
//修改功能
root.getChild("student").getChild("age").setText("33");
//输出
XMLOutputter xmlOut = new XMLOutputter();
Format fmt = Format.getPrettyFormat();
fmt.setIndent(" ");//四个空格
fmt.setEncoding("gb2312");
//设置格式与输出相关
xmlOut.setFormat(fmt);
try {
xmlOut.output(doc, System.out);
} catch (IOException e) {
e.printStackTrace();
}
} catch (JDOMException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
**JDOM概述** JDOM(Java Document Object Model)是一个用于处理XML文档的Java库,它提供了在内存中构建和操作XML文档的API。JDOM的主要目标是为Java开发者提供一个高性能、灵活且易于使用的XML处理工具,使得XML...
Java中的JDOM(Java Document Object Model)是一个用于处理XML文档的库,它提供了一种方便的方式来创建、修改和操作XML数据。JDOM是完全用Java编写的,因此它与Java平台紧密集成,提供了高效且灵活的API来处理XML...
Java的JDOM库是用于处理XML文档的强大工具,它的全称是Java Document Object Model。JDOM提供了一种高效且方便的方式来创建、修改和操作XML数据,使得Java开发者无需依赖于DOM(Document Object Model)或SAX...
JDOM,全称为Java Document Object Model,是一种专为Java设计的XML处理库。它提供了一种在Java应用程序中创建、修改和操作XML文档的方法。在本文中,我们将深入探讨JDOM的基本概念、功能、安装与下载,以及如何在...
JDOM是Java中一个用于处理XML文档的库,它提供了一种高效且方便的方式来创建、读取、修改XML文件。本篇文章将深入探讨如何使用JDOM来读取XML文件。 首先,我们需要了解JDOM的基本概念。JDOM通过构建一棵DOM...
JDOM,全称为Java Document Object Model,是一种专为Java设计的XML处理库。它提供了一种高效、方便的方式来创建、构建、修改和读取XML文档。JDOM的主要优点在于其完全使用Java语言实现,因此与Java平台高度集成,...
JDOM,全称为Java Document Object Model,是一种专为Java设计的XML处理库。它提供了一种高效、方便的方式来创建、修改和操作XML文档。在Java应用程序中,JDOM扮演着核心角色,允许开发者以面向对象的方式处理XML...
为了处理XML文档,开发者经常需要依赖特定的库,如JDOM和DOM4J。这两个库都是Java中常用的XML解析器,提供了不同的方法来读取、写入、操作和解析XML文档。下面将详细讨论这两个库及其在XML处理中的应用。 **JDOM** ...
**JDOM 1.1.2 知识详解** JDOM 是一个专为 Java 设计的 XML 处理库,它的全称是 Java Document Object Model。JDOM 提供了一个基于树形结构的 API,用于创建、操作和读取 XML 文档。在 JDOM 1.1.2 版本中,它提供了...
在Java编程中,JDOM(Java Document Object Model)是处理XML的一种库,它提供了方便的方式来创建、修改和读取XML文档。本篇文章将深入探讨如何使用JDOM解析XML文件。 首先,我们需要理解JDOM的基本结构。JDOM通过...
**JDOM1.1:构建XML文档的强大工具** 在IT领域,XML(eXtensible Markup Language)是一种用于存储和传输数据的标记语言,广泛应用于数据交换、配置文件和Web服务。为了方便处理XML文档,Java社区开发了JDOM,一个...
JDOM,全称为Java Document Object Model,是一种专为Java设计的XML处理库。它提供了一种方便、高效的方式来创建、构建、修改和读取XML文档。JDOM的主要目标是简化XML处理,使得开发者能更直观地操作XML数据,而无需...
### JDOM教程知识点详解 #### 一、JDOM简介 JDOM(Java Document Object Model)是一种用于处理XML文档的Java库。与SAX和DOM API相比,JDOM提供了更为简洁和直观的方式来创建、读取、修改和输出XML文档。本教程主要...
**JDOM解析XML详解** XML(Extensible Markup Language)是一种用于标记数据的标准化语言,广泛应用于数据交换、配置文件和Web服务等领域。JDOM是Java领域中专门处理XML的一个库,它提供了一种高效且方便的方式来...
《JDOM英文帮助文档》是Java开发者不可或缺的参考资料,尤其对于初学者而言,它提供了全面且深入的JDOM库知识。JDOM,全称为Java Document Object Model,是Java平台上的一个解析、创建和操作XML文档的API。这篇文档...
**JDOM v1.0 API** 是一个针对Java平台的DOM(Document Object Model)实现,专为处理XML文档而设计。JDOM的目标是提供一个高效、便捷、纯Java的XML处理库,使得开发者能更容易地读写XML数据。在本文中,我们将深入...
《深入解析JDOM:源代码探索之旅》 JDOM,全称Java Document Object Model,是一个专为Java设计的XML处理库。它提供了一个基于Java的API来创建、修改和访问XML文档,使得开发者能更方便地处理XML数据。本文将详细...
JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析、生成、序列化以及多种操作。 JDOM 直接为JAVA编程服务。它利用更为强有力的JAVA语言的诸多特性(方法重载、集合概念以及映射),把SAX和...
JDOM 是一个专门为Java设计的XML处理库,它结合了SAX和DOM的优点,提供了一种高效且易于使用的API来创建、解析和操作XML文档。JDOM的主要目标是简化XML处理,通过利用Java语言的强大特性,如方法重载、集合和映射,...
JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析、生成、序列化以及多种操作。 JDOM 直接为JAVA编程服务。它利用更为强有力的JAVA语言的诸多特性(方法重载、集合概念以及映射),把SAX和...