我在寻找最新,内存使用效率和高性能的Java XML解析API。 我需要解析3 MB至5 MB的XML文件。
我没有谷歌在这一点,来了解有关Sun Java流XML分析器(SJSXP)和Woodstox比DOM和SAX快得多。 两者都是使用的StAX API。 *架构验证不通过这些技术的支持。
阿尔托XML处理器也实现了StAX的API。
我还没有发现对这些技术的高性能混凝土的研究结果。
哪一个是最好的内存高效,高性能和易用性方面?
我在寻找最新,内存使用效率和高性能的Java XML解析API。 我需要解析3 MB至5 MB的XML文件。
我没有谷歌在这一点,来了解有关Sun Java流XML分析器(SJSXP)和Woodstox比DOM和SAX快得多。 两者都是使用的StAX API。 *架构验证不通过这些技术的支持。
阿尔托XML处理器也实现了StAX的API。
我还没有发现对这些技术的高性能混凝土的研究结果。
哪一个是最好的内存高效,高性能和易用性方面?
这里有一些更多的链接,可能是相关的:
至于性能:SJSXP是最慢的; 这只是的Xerces的重新包装内部,包裹在Stax的API。 这对性能有一定的负面影响(因为它不是真正设计用于拉解析)。 Woodstox是有点快; 快得多小文件和写作,语法分析的文档时差异较小。
和阿尔托是迄今为止速度最快的三个,尤其是对于解析。 它通常是50% - 比任何Woodstox或SJSXP快100%。 一个缺点是,它不能处理的DTD(并且由此没有外部实体;它处理预定义和字符实体)。
免责声明:我Woodstox和阿尔托的作者; 以及贡献者SJSXP(bug修复)
上面查询一些有用的链接:
http://www.developerfusion.com/article/84523/stax-the-odds-with-woodstox/ (2010年6月)
http://www.ibm.com/developerworks/opensource/library/os-ag-renegade15/ (2007年7月)
性能基准测试的细节:
http://www.xml.com/pub/a/2007/05/09/xml-parser-benchmarks-part-1.html (2007年5月)