WEB开发网
开发学院软件开发Java Java 中的 XML: 文档模型,第一部分:性能 阅读

Java 中的 XML: 文档模型,第一部分:性能

 2009-11-05 00:00:00 来源:WEB开发网   
核心提示: 文档遍历时间文档遍历时间测试检查遍历构造的文档表示所需的时间,按文档顺序遍历每个元素、属性和文本内容段,Java 中的 XML: 文档模型,第一部分:性能(9),它试图表示文档模型接口的性能,这对于从进行过解析的文档中重复访问信息的应用程序来说可能很重要,用 Xerces 延迟的前两次测试所需的

文档遍历时间

文档遍历时间测试检查遍历构造的文档表示所需的时间,按文档顺序遍历每个元素、属性和文本内容段。它试图表示文档模型接口的性能,这对于从进行过解析的文档中重复访问信息的应用程序来说可能很重要。总体上,遍历时间比解析时间快得多。对于只对解析过的文档单次遍历的应用程序,解析时间将比遍历时间更重要。图 2 显示了结果。

图 2. 文档遍历时间

Java 中的 XML: 文档模型,第一部分:性能

图片看不清楚?请点击这里查看原图(大图)。

在本测试中,XPP 的性能大大超过了其余的测试对象。Xerces DOM 所花费的时间大约是 XPP 的两倍。虽然 EXML 具有废弃文档中单独的空白内容的优势,但是,EXML 花费的时间几乎是 XPP 的三倍。dom4j 在这张图中处于中间位置。

使用 XPP 拉回时,直到访问文档表示时才真正发生对文档文本的解析。这导致第一次遍历文档表示时的开销非常大(表中未显示)。如果以后访问整个文档表示,则当使用拉回解析方法时,XPP 显示性能的净损失。对于拉回解析器来说,前两个测试所需的总时间比使用 XPP 的常规解析长(长 20% 到 100%,这取决于文档)。但是,当还未完全访问正在进行解析的文档时,拉回解析器方法仍然具有可观的性能优势。

带有延迟节点创建的 Xerces 显示了相似的行为,第一次访问文档表示时导致性能下降(图中未显示)。但是,在 Xerces 情况下,节点创建开销大约与解析期间常规 DOM 创建的性能差值相同。对于较大的文档来说,用 Xerces 延迟的前两次测试所需的总时间大致与使用带常规 DOM 构建的 Xerces 所用的时间相同。如果在非常大的文档(可能 10KB 或更大)上使用 Xerces,则延迟的节点创建似乎是一个好选择。

上一页  4 5 6 7 8 9 10  下一页

Tags:Java XML 文档

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接