Performance 快速搜索JAXB对象

Performance 快速搜索JAXB对象,performance,dom,jaxb,benchmarking,Performance,Dom,Jaxb,Benchmarking,在我自己的基准测试和其他web链接中,与DOM库相比,JAXB解析XML文件的速度更快。然而,当我试图从根对象搜索JAXB对象时,与DOM相比,它的速度令人失望 为了使用JAXB进行搜索,我使用了ApacheJXPath库,即JXPathContext类及其getValue()方法。相比之下,对于DOM搜索,我使用了Document类及其getElementsByTagName()方法。我的基准测试表明,前者比后者慢得多 这里有一个难题,如果我想快速解析XML文件,我想使用JAXB,但是如果我想

在我自己的基准测试和其他web链接中,与DOM库相比,JAXB解析XML文件的速度更快。然而,当我试图从根对象搜索JAXB对象时,与DOM相比,它的速度令人失望

为了使用JAXB进行搜索,我使用了ApacheJXPath库,即JXPathContext类及其getValue()方法。相比之下,对于DOM搜索,我使用了Document类及其getElementsByTagName()方法。我的基准测试表明,前者比后者慢得多

这里有一个难题,如果我想快速解析XML文件,我想使用JAXB,但是如果我想快速搜索节点对象,我必须使用DOM。我想知道是否有一种最佳方法可以同时完成这两项工作,例如,一种比JXPath更快的JAXB对象搜索或JAXB树遍历方法


提前谢谢

我是不是错过了这里显而易见的东西


JAXB封送到Java对象。Java对象可以携带方法。例如搜索方法。这比依靠一堆自省来嗅出通用方法的注释要快得多,因为默认情况下,您可以跳过XML中不相关的部分。更好的是:您可以针对特定的搜索查询优化数据结构本身(Java对象)。

谢谢您的好意。我当然可以在根java类中添加一个专用的搜索方法,但这并不像DOM库那样好。我想知道是否有一种在JAXB中搜索对象的通用方法,比如具有类似性能的DOM文档类,或者至少比JXPath库更快。