速度与FreeMarker

时间:2009-09-22 11:06:46

标签: java velocity template-engine freemarker

Velocity或FreeMarker?

他们看起来几乎一样,甚至是语法?

用什么?或何时使用什么?

5 个答案:

答案 0 :(得分:57)

项目的目标不同。

Velocity的目标是让模板尽可能简单,以帮助维持逻辑和演示之间的隔离,这样就不会在模板中滑动粘滞代码的滑坡。有时这是正确的。当然,有时能够将复杂的逻辑直接连接到模板中是正确的。

速度不会频繁转换,但这并不意味着它没有得到积极的开发。用户社区很大,代码快速稳定,语法基本固定。在过去的几年里,Freemarker经历了模板语法和api方面的流失。有时单独离开是很好的。再次,取决于你在寻找什么。

Freemarker的文档更加广泛 - 它是一个更复杂的软件。

Freemarker的许多用例归结为需要复杂的模板工作流程而不需要编译步骤。近年来,我不是用Java来解决这个问题,而是使用Python或Ruby。

答案 1 :(得分:52)

Velocity不再处于积极发展状态。 Freemarker是。

根据我的经验,Freemarker也更加灵活。

答案 2 :(得分:20)

如果可以,请使用Freemarker:

  • 仍在积极发展,如@skaffman说
  • 良好的文档,优于Velocity恕我直言
  • 在许多网络框架中作为替代模板语言提供
  • 比Velocity更少的依赖性
  • 比没有扩展名的原始Velocity更完整。
  • 另请参阅@leonm
  • 提供的链接

答案 3 :(得分:7)

他们不时尝试区分自己(example)。

我和两个人都进行了广泛的合作,从我的观点来看,他们非常相似。有很多功能你可以构建成模板语言,其余的只是绒毛。

答案 4 :(得分:4)

有两本关于Velocity的出版书籍:

以及其他有关章节的书籍。 所以,关于FreeMarker拥有更多或更好的文档的原因很多:)。