【发布时间】:2012-01-27 10:19:14
【问题描述】:
我想将一个 XML 转换为另一个 xml。最好的方法是什么。我在网上搜索,发现我可以使用 XSLT 或 JAXB 来做到这一点。任何人都可以帮助找到最佳做法。
【问题讨论】:
我想将一个 XML 转换为另一个 xml。最好的方法是什么。我在网上搜索,发现我可以使用 XSLT 或 JAXB 来做到这一点。任何人都可以帮助找到最佳做法。
【问题讨论】:
如果您尝试在 JAXB 中执行此操作,您会将 XML 转换为 Java 对象,然后再转换回 XML。如果您真的想利用 Java 对象,这可能很有用,但如果您只是想要 XML-to-XML,那么中间有一些非 XML 的东西是没有意义的。您尚未描述转换,但在大多数情况下,XSLT 将是完成这项工作的正确工具。唯一的缺点是有一个学习曲线:它可能与您熟悉的编程或脚本语言有很大不同,它是基于规则和声明性的。在开始编码之前花一天时间阅读一本好书,这样你就更有可能了解自己在做什么。
【讨论】:
如果您想将 Java 类绑定到 XML,则使用 JAXB,反之亦然。如果你只是想转换 XML -> XML,那么 XSLT 是最好的选择。
Google for JAXP(用于 XML 处理的 Java API),特别是 TransformerFactory-Class 应该为您提供一个很好的起点。
【讨论】:
在 Java 中的 XSLT 上阅读此内容:www.oreilly.com/catalog/javaxslt/chapter/ch05.html
JAXB 用于 XML 绑定(即将您的类序列化为 XML)。
【讨论】:
根据我的经验,xslt 可能非常慢。如果文件很小,请尝试 dom 解析器,否则请尝试 sax 解析器。
【讨论】: