7

它们有什么区别?都说JAXP只是一个API规范,JDOM和DOM4J都实现了,对吗?而且它们都需要一个 XML 解析器,就像 XERCES 一样,对吗?提前致谢!

4

2 回答 2

12

JAXP (JSR-206)

是一组用于 Java XML 解析器的标准 API。它涵盖以下领域:

  • DOM(org.w3c.dom包)
  • SAX(org.xml.sax包)
  • StAX/JSR-173 ( java.xml.stream)
  • XSLT ( javax.xml.transform)
  • XPath ( javax.xml.xpath)
  • 验证 ( javax.xml.validation)
  • 数据类型 ( javax.xml.datatype)

该标准是由来自许多公司和个人的代表组成的专家组制定的。作为标准,这意味着有多个实现(Xerces 实现 JAXP),并且可以包含在 JDK 中。

施尔塞斯

是一个开源 Java XML 解析器,提供符合 JAXP 标准的 DOM 和 SAX 实现。

JDOM 和 DOM4J

是开源 Java XML 解析器。

于 2012-09-18T17:08:00.020 回答
10

你在比较苹果和汽车。

  • JAXP 是现在与 JDK 捆绑在一起的 API
  • JDOM 是一个不同的 API,也是一个库
  • DOM4J 也是一个不同的 API 和库

  • XERCES 是一个用 Java 实现的 XML 解析器。XERCES 的一个版本也捆绑在 JDK 中。

您使用哪种 API 很大程度上取决于个人喜好。我喜欢 JDOM 部分是因为我习惯使用它。类似地,XML 解析器也有几种实现。如果您使用最新的 JDK 进行 Java 编程,您将能够使用 JAXP,而无需添加外部库。

于 2012-09-18T15:32:24.727 回答