在 Java 领域 XML 文件的技术大致分为两类:XML API 和 OXMapping.XML API 是 XML 处理的基础,可选技术包括JDOM,Dom4j等;OXMapping 是 Object-XML Mapping 的简称,这种技术隐藏了 XML 底层操作的细节,可以将 XML 文件映射成一个 JavaBean 对象,也可以把一个 JavaBean 对象保存成一个 XML 文件,可选技术 XStream 、 Digester 、 Castor 等。 XML API 和 OXMapping 的关系类似于 JDBC 和 ORMaping 的关系, OXMapping 内部实现使用 XML API 来完成,两种实现技术从不同的层面实现了 XML 的处理。
XML API
此类 XML 处理技术中最流行的莫过于DOM4J 了,DOM4J 是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件。如今你可以看到越来越多的 Java 软件都在使用 DOM4J 来读写 XML,特别值得一提的是连 Sun 的 JAXM 也在用 DOM4J
OXMapping
使用 XML API 解析是略显烦琐的,受 ORMapping 技术的启发,人们发明了 OXMapping 技术,使用 OXMapping 技术,我们可以将 XML 文件映射成一个 JavaBean 对象,也可以把一个 JavaBean 对象保存成一个 XML 文件,这大大简化了我们的开发工作量,使得开发人员能更多的关注应用层面的东西。
开源世界中涌现出很多 OXMapping 框架,包括 XStream 、 Digester 、 Castor 等。 其中Digester 是“开源名牌” Apache 下的子项目,网上可以参考的资料很多。