dom4j是一个十分优秀的JavaXML API,具有性能优异、功能强大和极其易使用的特点,它的性能超过sun公司官方的dom技术,同时它也是一个开放源代码的软件,可以在SourceForge上找到它。在IBM developerWorks上面还可以找到一篇文章,对主流的Java XML API进行的性能、功能和易用性的评测,所以可以知道dom4j无论在哪个方面都是非常出色的。如今可以看到越来越多的Java软件都在使用dom4j来读写XML,特别值得一提的是连Sun的JAXM也在用dom4j。这已经是必须使用的jar包, Hibernate也用它来读写配置文件。
案例解析:
//创建SAXReader 的Reader 实例
SAXReader reader = new SAXReader();
try {
Document document = reader.read(new File("test.xml"));
Element students =document.getRootElement();
Iterator<Element> it =students.elementIterator();
while(it.hasNext()) {
Element student = it.next();
System.out.println(" 节点 " + student.getName() +" :");
//遍历所有属性名和属性值
List<Attribute> student_attr = student.attributes();
for(Attribute attribute : student_attr) {
System.out.println("--- 属性 " + attribute.getName() + " = " +attribute.getValue());
}
//遍历所有子节点和节点值
Iterator<Element> subElement_it = student.elementIterator();
while(subElement_it.hasNext()) {
Element subEle = subElement_it.next();
System.out.println("节点:" + subEle.getName() + " = " + subEle.getStringValue());
}
}
} catch (DocumentException e) {
e.printStackTrace();
}
Note:
所有的类来源于DOM4J包中