我目前正在开发一个 RSS 提要阅读器,我想知道哪种 XML 解析 API 最适合它。 (请注意,我并不是在寻找 Feed 解析器库 - 它只是有关 XML API 研究的起点)
我正在寻找 Java 平台上各种 XML 解析 API 的概要,重点关注以下标准:
- Ease of configuration
- Ease of use
- 节点导航 - 到兄弟节点、到子节点、到父节点。
- 访问/操作命名空间、属性、文本。
- 类层次结构是经过深思熟虑的还是自然的?
- Invalid XML - what happens (when does it fail?), and what can I do when:
- 遇到无效字符(编码或 XML 规范中禁止)
- 树结构无效(例如,由于未转义的 HTML 标签)
以下是一些我认为有用但不重要的信息:
我目前正在考虑 JVM 上的任何 XML API。
- 它可以是 Java 标准(DOM、SAX、StAX、JAXP),也可以是特定于实现的 API。
- 它可以是 JVM 上任何语言的 API(Scala、Groovy、Jython、JRuby...)——只需确保它与标准 Java API 相比添加了一些内容即可。
我相信构建这个线程的一个好方法是每个答案只有一个 API。
jaxp 不是一个实现,而是一个包装器/外观 api,您可以在其中插入多个解析器实现。所以你只剩下 sax、dom 和 stax。现在下面是两个很好的比较,你可以算一下:
http://techstop.abidshafiq.com/2010/02/java-xml-api-comparison/
http://java.sun.com/performance/reference/whitepapers/StAX-1_0.pdf
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)