java - JAXB 使用 Woodstox 解析器来提高性能?

标签 java parsing jaxb woodstox

是否可以切换 native 解析器,我认为它是基于 Java 反射的。我们有一些性能问题,想知道我们是否可以切换实现。

非常感谢您的建议。

附加信息:这是继承的代码,我们需要修复网络服务中的性能问题。我正在寻找无需更改代码的性能提升。现有代码使用 JAXB 编码和解码通过 CXF(wsdl 到 java)生成的 java 对象。

我的目标是将实现切换到 sTax,然后使用 Woodstox 库。

最佳答案

如果您的 JAXB 实现通过标准 JAXP API 在幕后使用 StAX 解析器,则添加 Woodstox将 .jar 添加到您的类路径应该会导致您的 JAXB impl 使用 Woodstox。通过这样做,您应该会看到性能提升。

Woodstox jar 包含以下条目,将它添加到类路径将允许 JAXP API 返回它的一个实例:

  • META-INF/services/javax.xml.stream.XMLInputFactory
  • META-INF/services/javax.xml.stream.XMLOuputFactory

注:我领EclipseLink JAXB (MOXy) , 并且 MOXy 在可用时使用 StAX 解析器。其他 JAXB 实现(Metro、JaxMe)可能做同样的事情。

关于java - JAXB 使用 Woodstox 解析器来提高性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5477842/

相关文章:

java - 使用扫描仪输入类处理可变数量的参数

java - 如何从特定网站提取 HTML 表到外部 HTML 文件?

语法写作工具

python - 如何在给定括号解析的情况下提取语法产生式规则?

java - 解析 Web 服务响应时出现问题 (Metro/JAXB)

java - 如何使用 JAXB 从 Java 中的 XSD 获取 minOccurs/maxOccurs 值?

xml - 如何在 weblogic 12.1.3 中指定 JAXBContext 实现

java - GWT TabLayoutPanel -> 不显示选项卡内容

Java:针对包含另一个 xsd 的 xsd 进行字符串 xml 验证

jquery - 通过浏览器扩展添加表值