首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Freemarker与Velocity

Freemarker与Velocity
EN

Stack Overflow用户
提问于 2010-11-10 04:03:55
回答 5查看 26.5K关注 0票数 22

我正在尝试选择Freemarker和Velocity作为模板引擎,你觉得它们有什么优缺点吗?

有什么替代方案是我应该考虑的吗?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-11-10 23:35:58

Velocity和Freemarker都很有能力。不要为选择而苦恼。它们在设计背后有相当不同的优先级,所以一旦你超越了基本的模板,它们的功能集就很难比较了。Velocity的语法更简单、更独特,Freemarker的语法更丰富,允许它们支持JSP库。Velocity通过VelocityTools等附加项目提供了更多自由,并最终提供了更多功能。Freemarker提供了更好的原生空白处理,最近的Velocity版本提供了更有趣的内容控件(#define,#evaluate,#[字面块]#)。

至于性能,Velocity在最近几年取得了很大的进步,可能除了在初始模板解析方面。但对于任何正常的应用程序来说,性能很重要,你应该将两个引擎都设置为缓存模板,并且只解析一次,这样就不会有太大的问题。通常,您会发现使用这两个引擎的性能更多地取决于模板的性质,而不是引擎之间的差异。

StringTemplate也是受人尊敬的,尽管他们是MVC纳粹,在功能上无法与Velocity或Freemarker相提并论。;)你的潜在失望可能比两个更流行的模板引擎都要高一点,这两个引擎都不太可能让你失望。抓起一个就走吧。

票数 36
EN

Stack Overflow用户

发布于 2010-11-10 04:11:21

我更喜欢FreeMarker。我喜欢这些文档,我总能找到我需要的东西。总的来说,我只是觉得它非常强大。

String Template是另一种选择。

票数 8
EN

Stack Overflow用户

发布于 2010-11-10 04:15:51

看起来this是这种比较的一个不错的缩影。不过,它已经有几年的历史了。

摘自文章:

结束语

FreeMarker和Velocity都是非常强大的模板引擎。Velocity似乎拥有更大的用户基础,这可能是因为它是Apache项目的一部分。但是,正如我在本文中所展示的,FreeMarker是两者中更复杂、速度更快的一种。在基本操作中,这两个模板引擎几乎是相似的,都提供了一个易于理解的API。

Velocity和FreeMarker都很容易集成到应用程序中,并在小模板上提供良好的性能。当解析较大的模板时,速度会变慢,这在为项目选择模板引擎时可能会考虑到这一点。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4137981

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档