表现层 FreeMarker与JSP

在java领域,表现层技术主要有三种:jsp、freemarker、velocity。

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

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

freemarker
优势:
一、不能编写java代码,能够实现严格的mvc分离
二、性能很是不错
三、对jsp标签支持良好
四、内置大量经常使用功能,使用很是方便
五、宏定义(相似jsp标签)很是方便
六、使用表达式语言
缺点:
一、不是官方标准
二、用户群体和第三方标签库没有jsp多

选择freemarker的缘由:
一、性能。velocity应该是最好的,其次是jsp,普通的页面freemarker性能最差(虽然只是几毫秒到十几毫秒的差距)。可是在复杂页面上(包含大量判断、日期金额格式化)的页面上,freemarker的性能比使用tag和el的jsp好。二、宏定义比jsp tag方便三、内置大量经常使用功能。好比html过滤,日期金额格式化等等,使用很是方便四、支持jsp标签五、能够实现严格的mvc分离
相关文章
相关标签/搜索