3

阅读此讨论

Aalto 是三者中最快的,尤其是在解析方面。它通常比 Woodstox 或 SJSXP 快 50% - 100%。一个缺点是它不处理 DTD(因此不处理外部实体;它处理预定义和字符实体)。

似乎 Aalto 是用杰克逊读/写 xml 的推荐方法。但是在jackson-dataformat-xml页面上,它建议使用 Woodstox,它已经有一段时间没有更新了。

那么最好的前进方式是什么?伍德斯托克斯还是阿尔托?

4

1 回答 1

3

我认为 Woodstox 是正确操作的最安全选择,因为它具有广泛的功能并且是事实上的 Stax 标准实现——大多数 Java XML/Soap 框架都使用 Woodstox。因此,如果您只是想减少麻烦,这是一个不错的选择。

但是 Aalto 明显更快,并且它的功能集非常适合 Jackson XML 模块: JAXB 样式的数据绑定不需要 DTD 处理。

所以我想说这又回到了你对性能的重视程度(Aalto)和简单的无忧“它可以毫无问题地工作”(Woodstox)的程度。如果我自己开发系统,这就是我会选择自己的方式。

此外,从一种切换到另一种非常容易:因此一种可能是尝试 Aalto;并且仅当您遇到问题时(根据问题跟踪器,FWIW 没有报告 Aalto/Jackson 的问题——这些是假设问题)。

于 2013-11-15T22:14:37.430 回答