阅读this discussion

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

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

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

最佳答案

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

但是Aalto的速度要快得多,并且它的功能集对于Jackson XML模块来说非常合适:JAXB样式的数据绑定不需要DTD处理。

因此,我想说的是,您对性能的重视程度(Aalto)和多少简单的无麻烦“它毫无问题地起作用”(Woodstox)。
如果我自己开发系统,那就是我会选择自己的方式。

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

09-05 08:06