当前位置:首页 > Java

java如何编写xml

2026-03-24 05:38:03Java

使用DOM生成XML

DOM(Document Object Model)是Java内置的XML处理API,适合构建结构化的XML文档。

创建DocumentBuilder实例,通过Document对象添加元素和属性:

import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
Document doc = factory.newDocumentBuilder().newDocument();

Element root = doc.createElement("root");
doc.appendChild(root);

Element child = doc.createElement("child");
child.setAttribute("id", "1");
child.setTextContent("Hello XML");
root.appendChild(child);

// 转换为字符串
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
StringWriter writer = new StringWriter();
transformer.transform(new DOMSource(doc), new StreamResult(writer));
String xmlString = writer.toString();

使用JDOM生成XML

JDOM是简化XML操作的第三方库,需添加依赖(如Maven):

java如何编写xml

<dependency>
    <groupId>org.jdom</groupId>
    <artifactId>jdom2</artifactId>
    <version>2.0.6</version>
</dependency>

代码示例:

import org.jdom2.Element;
import org.jdom2.Document;
import org.jdom2.output.Format;
import org.jdom2.output.XMLOutputter;

Element root = new Element("root");
Document doc = new Document(root);

Element child = new Element("child");
child.setAttribute("id", "1");
child.setText("Hello XML");
root.addContent(child);

XMLOutputter outputter = new XMLOutputter(Format.getPrettyFormat());
String xmlString = outputter.outputString(doc);

使用XStream生成XML

XStream支持对象到XML的序列化,需添加依赖:

java如何编写xml

<dependency>
    <groupId>com.thoughtworks.xstream</groupId>
    <artifactId>xstream</artifactId>
    <version>1.4.20</version>
</dependency>

代码示例:

import com.thoughtworks.xstream.XStream;

class Person {
    String name = "John";
    int age = 30;
}

XStream xstream = new XStream();
String xml = xstream.toXML(new Person());
// 输出:<Person><name>John</name><age>30</age></Person>

使用StAX生成XML

StAX(Streaming API for XML)适合处理大型XML文件,基于事件驱动:

import javax.xml.stream.XMLOutputFactory;
import javax.xml.stream.XMLStreamWriter;

StringWriter writer = new StringWriter();
XMLStreamWriter xmlWriter = XMLOutputFactory.newInstance().createXMLStreamWriter(writer);

xmlWriter.writeStartDocument();
xmlWriter.writeStartElement("root");
xmlWriter.writeStartElement("child");
xmlWriter.writeAttribute("id", "1");
xmlWriter.writeCharacters("Hello XML");
xmlWriter.writeEndElement();
xmlWriter.writeEndElement();
xmlWriter.writeEndDocument();

String xmlString = writer.toString();

选择建议

  • DOM/JDOM:适合需要频繁修改或随机访问的XML文档。
  • StAX:适合内存受限的大型XML文件处理。
  • XStream:适合简单对象的快速序列化。

以上方法生成的XML均可通过文件输出流(如FileWriter)保存到本地文件。

标签: javaxml
分享给朋友:

相关文章

java如何调用方法

java如何调用方法

调用方法的基本语法 在Java中,调用方法需要明确方法所属的对象(实例方法)或类(静态方法),并传递必要的参数。语法格式如下: 实例方法:对象名.方法名(参数列表); 静态方法:类名…

如何运行java项目

如何运行java项目

运行Java项目的步骤 确保Java环境已安装 在运行Java项目前,需确认系统已安装Java Development Kit(JDK)。通过命令行输入java -version和javac -ver…

如何搭建java环境

如何搭建java环境

下载JDK 访问Oracle官网或OpenJDK官网下载适合操作系统的JDK安装包。推荐选择长期支持版本(如JDK 17或JDK 21)。 安装JDK 运行下载的安装程序,按照向导完成安装。注意…

java版本如何查看

java版本如何查看

查看Java版本的命令行方法 在命令行或终端中运行以下命令可以查看当前安装的Java版本: java -version 输出示例: java version "1.8.0_301" Java(TM…

java如何入门

java如何入门

学习基础语法 从Java的基础语法开始,包括变量、数据类型、运算符、控制结构(if-else、for循环、while循环)等。可以通过官方文档或入门教程学习。 安装开发环境 下载并安装JDK(J…

java下载功能vue实现

java下载功能vue实现

Java 后端文件下载功能实现 后端需提供文件下载的接口,通常使用 HttpServletResponse 实现。以下是一个简单的 Java Spring Boot 示例: @GetMapping(…