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