📅  最后修改于: 2023-12-03 15:15:55.832000             🧑  作者: Mango
在Java中,DOM(文档对象模型)是一种处理XML文档的标准API。DOM允许开发人员在内存中构建XML文档,并提供了一组用于访问和操作XML文档的标准技术。
文档对象是 DOM 中的核心概念之一。文档对象是整个XML文档的建模,它包含XML文档中的每个元素(如节点、属性、文本等)。在Java中,使用 Document 对象来表示文档对象。
Document 对象拥有以下特性:
Document 对象提供了许多方法来访问和操作XML文档。下面是一些常用的方法:
createElement(name)
:创建一个指定名称的元素节点createAttribute(name)
:创建一个指定名称的属性节点getElementsByTagName(name)
:返回指定名称的所有元素节点的列表getElementById(id)
:返回拥有指定 id 属性的元素节点getChildNodes()
:返回当前节点的所有子节点下面是一个简单的示例,其中使用 Document 对象创建一个XML文档:
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
public class XMLCreator {
public static void main(String[] args) throws Exception {
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.newDocument();
// 创建根元素
Element rootElement = doc.createElement("students");
doc.appendChild(rootElement);
// 创建子元素
Element student = doc.createElement("student");
rootElement.appendChild(student);
// 添加属性
student.setAttribute("id", "1");
// 创建子元素并赋值
Element name = doc.createElement("name");
name.appendChild(doc.createTextNode("Tom"));
student.appendChild(name);
// 将文档写入文件
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File("students.xml"));
transformer.transform(source, result);
System.out.println("文档已创建!");
}
}
在上面的示例中,通过创建 Document 对象来创建一个XML文档,并使用各种方法来添加元素、属性和文本。最后,将文档输出到文件中。
综上所述,文档对象是 Java DOM 中表示整个XML文档的模型,是操作和处理XML文档的基础。