Java创建XML文件最常用、最稳妥的方式是使用DOM结合Transformer,它原生支持、逻辑清晰、适合中小规模XML生成;先用DOM构建树形结构,再通过Transformer序列化为文件并设置UTF-8编码。
Java创建XML文件最常用、最稳妥的方式是使用DOM(Document Object Model)结合Transformer,它原生支持、逻辑清晰、适合中小规模XML生成。
DOM把整个XML当作树形对象来操作,先创建Document对象,再逐层添加元素、属性和文本内容。
例如:创建一个,需先建book元素,设id属性,再建title子元素并追加文本节点。
DOM只在内存中构建结构,必须用TransformerFactory和Transformer将其序列化为实际XML文件。
encoding="UTF-8")如果已有POJO类且字段与XML结构高度对应,JAXB更简洁——只需加@XmlRootElement等注解,用Marshaller一键输出。
text绑定类,获取Marshaller
注意:JAXB在JDK 11+已移出默认模块,需单独引入jakarta.xml.bind:jakarta.xml.bind-api及实现库。
生成XML时容易忽略编码和特殊字符处理:
OutputKeys.ENCODING为"UTF-8",否则中文可能乱码、&等字符时,DOM会自动转义,无需手动替换
不复杂但容易忽略。