我需要使用 Java 将 XML 转换为 XML。我用谷歌搜索,发现以下技术很少
- JAXB
- 阿帕奇茧
- XSLT
谁能从上面的列表中向我推荐更好的方法/技术?请让我知道是否还有其他更好的选择。
注意:要避免编写 XSLT。
谢谢你。
我需要使用 Java 将 XML 转换为 XML。我用谷歌搜索,发现以下技术很少
谁能从上面的列表中向我推荐更好的方法/技术?请让我知道是否还有其他更好的选择。
注意:要避免编写 XSLT。
谢谢你。
创建 XSLT 是为了将 XML 转换为某种东西,并且在转换为 XML 方面表现出色。
Apache Cocoon 是一款出色的软件,具有链接处理单元的功能。但这可能是矫枉过正。最后,您可能必须编写 XSLT 以供 Cocoon 处理。
很抱歉,我没有JAXP的经验(SAX和JDOM选项都没有),并且无法为您提供它的优缺点……除了一件好事是它提供了第三种选择:XSLT ;-)
如果您真的不想使用 XSLT,不妨看看Groovy,它编译为 java 类,据说可以自动将 XML 转换为对象图,并将对象图转换为 XML。请查看以下主题以获得快速概览:
最后,也许看看这个非常相似的问题(及其答案):
确实存在与 XSLT 相关的学习曲线。确实,它是这项工作的最佳工具。咬紧牙关,开始学习。
如果你想要通用的、复杂的转换,那么 XSLT 就是你要走的路——AFAIK 它是这项工作最强大的工具。
对于许多更简单的任务,它可能不是必需的。如果您只是填写或多或少统一的文档,例如电子邮件或报告,请尝试使用freemarker 之类的模板框架。
我对 Cocoon 不熟悉,也不确定如何使用 JAXB 进行 XML 转换。
我发现 saxon 是一个出色的 xslt 处理器,能够支持 xslt 2.0。xslt 1.0 和 2.0 之间存在巨大差异。我相信它也可以在 Java 中扩展。