📅  最后修改于: 2023-12-03 14:42:14.914000             🧑  作者: Mango
JDOM是Java语言的一种操作XML的API,其提供了简洁易用的方法来读取、创建、操作XML文档。
本文将介绍如何使用JDOM分析器来创建XML文档,以下为详细步骤:
在Java项目中使用JDOM需要先将其相关依赖导入项目中。导入方式有多种,在此以在Maven项目中导入为例:
在pom.xml文件中加入以下依赖:
<dependency>
<groupId>org.jdom</groupId>
<artifactId>jdom2</artifactId>
<version>2.0.6</version>
</dependency>
通过JDOM提供的类,可以轻易地创建一个新的XML文档。
创建一个根元素为"books"的XML文档示例代码:
import java.io.FileWriter;
import java.io.IOException;
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.output.Format;
import org.jdom2.output.XMLOutputter;
public class CreateXML {
public static void main(String[] args) throws IOException {
// 创建根元素
Element root = new Element("books");
// 创建文档
Document doc = new Document(root);
// 添加元素及元素属性
Element book1 = new Element("book").setAttribute("id", "001");
Element title1 = new Element("title").setText("Java编程思想");
Element author1 = new Element("author").setText("Bruce Eckel");
Element price1 = new Element("price").setText("99.00");
book1.addContent(title1);
book1.addContent(author1);
book1.addContent(price1);
Element book2 = new Element("book").setAttribute("id", "002");
Element title2 = new Element("title").setText("深入理解Java虚拟机");
Element author2 = new Element("author").setText("周志明");
Element price2 = new Element("price").setText("89.00");
book2.addContent(title2);
book2.addContent(author2);
book2.addContent(price2);
// 将元素添加到根元素
root.addContent(book1);
root.addContent(book2);
// 输出XML文件
XMLOutputter outputter = new XMLOutputter(Format.getPrettyFormat());
FileWriter writer = new FileWriter("books.xml");
outputter.output(doc, writer);
writer.close();
}
}
通过JDOM提供的类,可以方便地解析一个XML文档。
解析刚刚创建出来的books.xml文件示例代码:
import java.io.File;
import java.io.IOException;
import java.util.List;
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.JDOMException;
import org.jdom2.input.SAXBuilder;
public class ParseXML {
public static void main(String[] args) throws JDOMException, IOException {
// 构造解析器
SAXBuilder builder = new SAXBuilder();
// 解析XML文件
Document doc = builder.build(new File("books.xml"));
// 获取根元素
Element root = doc.getRootElement();
// 获取所有子元素
List<Element> books = root.getChildren();
// 遍历输出所有书籍信息
for (Element book : books) {
System.out.println("id:" + book.getAttributeValue("id"));
System.out.println("title:" + book.getChildText("title"));
System.out.println("author:" + book.getChildText("author"));
System.out.println("price:" + book.getChildText("price"));
}
}
}
以上就是使用JDOM创建和解析XML文档的基本操作。JDOM不仅提供了各种方便易用的API来处理XML,也是解析速度较快的XML处理库之一,因此广受Java开发者的欢迎。