阅读此讨论
Aalto 是三者中最快的,尤其是在解析方面。它通常比 Woodstox 或 SJSXP 快 50% - 100%。一个缺点是它不处理 DTD(因此不处理外部实体;它处理预定义和字符实体)。
似乎 Aalto 是用杰克逊读/写 xml 的推荐方法。但是在jackson-dataformat-xml页面上,它建议使用 Woodstox,它已经有一段时间没有更新了。
那么最好的前进方式是什么?伍德斯托克斯还是阿尔托?
阅读此讨论
Aalto 是三者中最快的,尤其是在解析方面。它通常比 Woodstox 或 SJSXP 快 50% - 100%。一个缺点是它不处理 DTD(因此不处理外部实体;它处理预定义和字符实体)。
似乎 Aalto 是用杰克逊读/写 xml 的推荐方法。但是在jackson-dataformat-xml页面上,它建议使用 Woodstox,它已经有一段时间没有更新了。
那么最好的前进方式是什么?伍德斯托克斯还是阿尔托?
我认为 Woodstox 是正确操作的最安全选择,因为它具有广泛的功能并且是事实上的 Stax 标准实现——大多数 Java XML/Soap 框架都使用 Woodstox。因此,如果您只是想减少麻烦,这是一个不错的选择。
但是 Aalto 明显更快,并且它的功能集非常适合 Jackson XML 模块: JAXB 样式的数据绑定不需要 DTD 处理。
所以我想说这又回到了你对性能的重视程度(Aalto)和简单的无忧“它可以毫无问题地工作”(Woodstox)的程度。如果我自己开发系统,这就是我会选择自己的方式。
此外,从一种切换到另一种非常容易:因此一种可能是尝试 Aalto;并且仅当您遇到问题时(根据问题跟踪器,FWIW 没有报告 Aalto/Jackson 的问题——这些是假设问题)。