Dom4j 是 Java 中轻量、灵活的开源 XML 处理库,支持 DOM/SAX/JAXP/XPath;Maven 依赖需配置 groupId org.dom4j、artifactId dom4j、version 2.1.4;读取用 SAXReader,解析靠 getRootElement() 和 elementText();XPath 支持便捷定位,如 selectSingleNode();构建 XML 用 DocumentHelper.createDocument() 和 addElement(),输出可格式化。

Dom4j 是 Java 中一个功能强大且易用的开源 XML 处理库,支持 DOM、SAX、JAXP 和 XPath,特别适合需要灵活读写 XML 的场景。它比原生 JAXP 更简洁,比 JDOM 更轻量,是实际开发中常用的选择。
使用 Maven 项目,直接在 pom.xml 中添加:
注意:Dom4j 2.1+ 默认要求 Java 8+,且已内置 JAXEN(XPath 支持),无需额外引入。
用 SAXReader 加载 XML 文件或字符串,获取 Document 后遍历结构:
立即学习“Java免费学习笔记(深入)”;
SAXReader reader = new SAXReader();
reader.read(new File("config.xml")) 或 reader.read("<books>...</books>")
document.getRootElement() 获取根元素element.elements("book") 获取所有同名子元素,或 element.element("title") 获取第一个匹配子元素element.getTextTrim() 安全获取文本内容(自动去除首尾空白)示例:解析 String id = book.attributeValue("id"); String title = book.elementText("title");
Dom4j 对 XPath 支持友好,避免深层嵌套遍历:
document.selectNodes("//book[@id='101']") —— 查找所有 id=101 的 book 元素document.selectSingleNode("/library/book[1]/title") —— 取第一个 book 的 titleelement.valueOf("@price") —— 直接获取属性值(返回 String)注意:XPath 表达式区分大小写,且需确保命名空间正确(如含 namespace,需提前注册 Namespace 对象)。
新建 Document 可用 DocumentHelper.createDocument(),添加元素用 addElement(),设置属性用 addAttribute():
Element root = document.addElement("root");Element child = root.addElement("item").addAttribute("type", "info");child.setText("Hello World");XMLWriter writer = new XMLWriter(new FileWriter("output.xml")); writer.write(document); writer.close();
如需格式化输出(带缩进),用 OutputFormat.createPrettyPrint() 构造 writer。
以上就是Java Dom4j库怎么使用 Dom4j解析XML教程的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号