替代XSLT?

时间:2011-10-18 09:11:53

标签: java html xml parsing xslt

在我的项目中,我有一个用于将一些XML文件转换为HTML的huuuuge XSLT。 问题是这个文件日益成长,难以阅读,调试和测试。 所以我在考虑将所有解析过程都移到Java上。

你觉得这是个好主意吗?如果您建议使用什么库来解析XML并生成HTML(XML)?表演会更好还是更差?

如果这不是一个好主意吗?

由于

随机化

3 个答案:

答案 0 :(得分:2)

我认为Velocity是另一种选择。我更喜欢XSL-T。转换比模板更难编写,因为后者看起来与我希望生成的XML完全一样。添加标记以映射数据是一件简单的事情。

答案 1 :(得分:2)

我曾经有一个类似问题的客户端 - 数千行XSLT,一直在增长。我花了一个小时阅读它,越来越怀疑,然后用20行XSLT重新编写它。

重构通常是一个好主意,而代码越糟糕,重构就越有价值。但是没有理由相信只是因为代码很糟糕而且需要重构,你需要改为使用不同的编程语言。如果您知道如何正确使用XST,XST实际上非常擅长处理多样性和复杂性。

代码可能是对特殊情况的特殊处理的累积,并且每个新的特殊情况都会导致添加更多规则。这是一个难以解决的任何语言问题,但是XSLT可以比大多数语言更好地处理它,前提是你一直在应用你的思维来寻找包含所有特殊规则的抽象一般规则,所以你只需要将特殊规则编码为异常。

答案 2 :(得分:1)

看看CDuce - 它是一种严格类型化,静态编译的XML处理语言。