主题 : jsp freemarker velocity 比较
级别: 白丁
UID: 31
积分:209 加为好友
威望: 0 精华: 0
主题:2 回复:167
注册时间:2009-06-03
在线时长:0
1#   发表于:2009-06-03 12:38:52  IP:59.137.*.*
在java领域,表现层技术主要有三种:jsp、freemarker、velocity。

jsp是大家最熟悉的技术
优点:
1、功能强大,可以写java代码
2、支持jsp标签(jsp tag)
3、支持表达式语言(el)
4、官方标准,用户群广,丰富的第三方jsp标签库
5、性能良好。jsp编译成class文件执行,有很好的性能表现
缺点:
jsp没有明显缺点,非要挑点骨头那就是,由于可以编写java代码,如使用不当容易破坏mvc结构。

velocity是较早出现的用于代替jsp的模板语言
优点:
1、不能编写java代码,可以实现严格的mvc分离
2、性能良好,据说比jsp性能还要好些
3、使用表达式语言,据说jsp的表达式语言就是学velocity的
缺点:
1、不是官方标准
2、用户群体和第三方标签库没有jsp多。
3、对jsp标签支持不够好

freemarker
优点:
1、不能编写java代码,可以实现严格的mvc分离
2、性能非常不错
3、对jsp标签支持良好
4、内置大量常用功能,使用非常方便
5、宏定义(类似jsp标签)非常方便
6、使用表达式语言
缺点:
1、不是官方标准
2、用户群体和第三方标签库没有jsp多

选择freemarker的原因:
1、性能。velocity应该是最好的,其次是jsp,普通的页面freemarker性能最差(虽然只是几毫秒到十几毫秒的差距)。但是在复杂页面上(包含大量判断、日期金额格式化)的页面上,freemarker的性能比使用tag和el的jsp好。
2、宏定义比jsp tag方便
3、内置大量常用功能。比如html过滤,日期金额格式化等等,使用非常方便
4、支持jsp标签
5、可以实现严格的mvc分离
本帖最近评分记录:
  • tufanshu    2009-08-19   人气    +1    我很赞同
  • 级别: 白丁
    UID: 537
    积分:1 加为好友
    威望: 0 精华: 0
    主题:0 回复:1
    注册时间:2009-08-19
    在线时长:0
    2#   发表于:2009-08-21 07:26:27  IP:124.220.*.*
    个人比较喜欢用freemarker ....
    级别: 童生
    UID: 661
    积分:3 加为好友
    威望: 0 精华: 0
    主题:0 回复:2
    注册时间:2009-09-01
    在线时长:0
    3#   发表于:2009-09-01 16:07:57  IP:124.152.*.*
    请问版主 velocity 性能好的原因 他和freemarker一样是数据去渲染的啊
    级别: 白丁
    UID: 800
    积分:14 加为好友
    威望: 0 精华: 0
    主题:0 回复:9
    注册时间:2009-09-14
    在线时长:0
    4#   发表于:2009-09-14 22:55:48  IP:116.96.*.*
    学习
    级别: 白丁
    UID: 10852
    积分:1 加为好友
    威望: 0 精华: 0
    主题:0 回复:1
    注册时间:2010-09-11
    在线时长:0
    5#   发表于:2010-09-11 11:46:47  IP:119.76.*.*
    对freemarker还是用得比较顺手。
    1 共1页