jdom表现

use*_*208 2 java xml performance jdom xml-parsing

我目前正在使用本机Java XML处理库(Xerces).我不能使用任何sax解析器,因为我需要随机访问xml节点.当我解析XML文件时,我发现CPU使用率达到100%.我正在处理大量小尺寸(1-10kb) -

while(hasFile){
processXMlfile(hasFile.next);
}
Run Code Online (Sandbox Code Playgroud)

在processXMlfile()中,我正在构建解析和处理文件.

如果我转到JDOM库,我会获得任何性能优势吗?

rol*_*lfl 5

JDOM 2.0.0解决了许多性能问题.其中一个与XML文件的"紧密循环"处理直接相关.

看一下:

http://hunterhacker.github.com/jdom/jdom2/apidocs/org/jdom2/input/sax/package-summary.html

你应该做的事情如下:

SAXBuilder saxbuilder = new SAXBuilder();
saxbuilder.setVariousConfigurations()
SAXEngine saxengine = saxbuilder.buildEnine();

while(hasfile) {
  processXML(saxengine, nextfile);
}
Run Code Online (Sandbox Code Playgroud)

在JDOM 2.0.0中使用SAXEngine概念将完全消除SAX解析基础结构的设置.设置时间占整体处理的一个重要标准.

虽然您可能仍然以100%的速度运行,但您会发现您的吞吐量可能会超过两倍....