论坛首页 Java企业应用论坛

模板:velocity和freemarker的比较

浏览 59047 次
该帖已经被评为良好帖
作者 正文
   发表时间:2007-05-18  
汗楼上的。。。。。。5个星星怎么来的?羡慕吖...

velocity macro 教程,请看这里:

http://velocity.apache.org/engine/devel/user-guide.html#velocimacros

关于velocity macro的使用,请参考 rollerblog. 谢谢。
0 请登录后投票
   发表时间:2007-05-18  
ray_linn 写道
velocity没有macro,这点比freemarker差多了,而且才是二者差别最显著的地方。

你是在说笑吧
0 请登录后投票
   发表时间:2007-05-18  
更正一下,由于年老记忆力衰退,我对Velocity Macro说的是不对的。
刚翻了一下自己的blog, 我个人认为FreeMarker胜过Velocity的地方:

1. FreeMarker具有强大的宏指令:nested,可以在Freemarker里头使用类似闭包的功能,因此FreeMarker的宏远比Velocity强大而且简单。

2. 超强XML转换能力,使得替代XSLT成为可能,Velocity不具备这个功能。

3. FreeMarker隔离性更好,不能访问servlet API。

更全面的比较见:
http://freemarker.sourceforge.net/fmVsVel.html
0 请登录后投票
   发表时间:2007-05-18  
ray_linn 写道
更正一下,由于年老体弱,我对Velocity Macro说的是不对的,应该是FreeMarker具有强大的新XML转换能力,使得替代XSLT成为可能,Velocity不具备这个功能。

http://freemarker.sourceforge.net/fmVsVel.html

确实是这样的,这个是freemarker功能更强大的地方,而且我十分不喜欢velocity的那种语法,太随便了,容易出错
0 请登录后投票
   发表时间:2007-05-18  
呵呵。。。。  我的英文名也是Ray
0 请登录后投票
   发表时间:2007-05-18  
Velocity 只是一个模板工具, 80%时间里 ,都作为一个View的角色,使用 $变量 就行了。

如果想镶嵌太多的 条件判断,变量定义, 逻辑运算, 不如使用ASP,JSP啊。
0 请登录后投票
   发表时间:2007-05-18  
sg552 写道
Velocity 只是一个模板工具, 80%时间里 ,都作为一个View的角色,使用 $变量 就行了。

如果想镶嵌太多的 条件判断,变量定义, 逻辑运算, 不如使用ASP,JSP啊。

你在说使用jsp吗,模板就是来终结jsp的,在模板里搞变量定义,条件判断,肯定比jsp来的快,不管是开发效率还是运行效率都是这样,难道你喜欢在页面上搞一堆又一堆的tag吗,还是在页面上搞一堆又一堆的java代码?
0 请登录后投票
   发表时间:2007-05-18  
lss就算是说得没有道理  不过也是一种看法
不应该被隐

velocity前段时间遇到一个他很讨厌的地方 if (3 > $aa + $bb) 不支持
希望在新版本里会做掉他吧
0 请登录后投票
   发表时间:2007-05-18  
模板建立的出发点,只是为了生成代码。从这个角度讲,模板怎么发展,也达不到JSP的目的。

从功能上说,JSP要远强大于模板。在JSP中,可以随意的加入JAVA代码。模板可以吗?我想在JSP中调用某个类,想用就用。VELOCITY可以吗? JSP中可以随意的实现种种逻辑,基本就是.java文件的B/S版。模板可以吗?

从速度上说,模板比JSP速度快?都是同一种语言,难道有不同的速度吗?  <%  System.out.println("hello, world!") %> 与
#set($a="hello world")  $a   不都是最终转换成同样的核心语句吗?要说JSP慢,那是因为它存在于WEB-INF之外,JSP 容器第一次加载时需要将JSP转换成JAVA的时间。之后速度跟JAVA代码一样。模板速度快?有具体数据吗?(别人都说C比JAVA快,后来不是有了个测试数据,JAVA很多地方都朝过了C/C++!用数据说话才对)



上班中不好发言,总之,是JSP 被 模板终结, 还是 模板 没落, 我们拭目以待。
0 请登录后投票
   发表时间:2007-05-18  
sg552 写道
模板建立的出发点,只是为了生成代码。从这个角度讲,模板怎么发展,也达不到JSP的目的。

从功能上说,JSP要远强大于模板。在JSP中,可以随意的加入JAVA代码。模板可以吗?我想在JSP中调用某个类,想用就用。VELOCITY可以吗? JSP中可以随意的实现种种逻辑,基本就是.java文件的B/S版。模板可以吗?

从速度上说,模板比JSP速度快?都是同一种语言,难道有不同的速度吗?  <%  System.out.println("hello, world!") %> 与
#set($a="hello world")  $a   不都是最终转换成同样的核心语句吗?要说JSP慢,那是因为它存在于WEB-INF之外,JSP 容器第一次加载时需要将JSP转换成JAVA的时间。之后速度跟JAVA代码一样。模板速度快?有具体数据吗?(别人都说C比JAVA快,后来不是有了个测试数据,JAVA很多地方都朝过了C/C++!用数据说话才对)



上班中不好发言,总之,是JSP 被 模板终结, 还是 模板 没落, 我们拭目以待。


你认为jsp中随意加入java代码是jsp的优点?那要tag做什么
你认为在jsp中随意调用某个类是jsp的优点?那要mvc做什么
你认为在jsp中实现业务逻辑是jsp的优点?那要代码结构分层做什么

总结那要mvc,orm,spring(ejb)做什么

我们就是要往更好的方向发展,往更规范的方向发展,往更可扩展性,可维护性的方向发展
jsp在被解析成JspServlet的时候你可以忽略不计吗?这个在开发里很重要,就是修改页面后能立刻体现出来
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics