实在是不明白FreeMarker比JSP好在什么地方

225次

问题描述:

实在是不明白FreeMarker比JSP好在什么地方,麻烦给回复

推荐答案

2024-01-12 23:05:45

在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分离

其他答案

2024-01-12 23:05:45

其实从功能上来说三者都是彼此彼此的;

1/velocity早apache上很久都没出更新了,freemarker一直都有更新而且手册还有中文版的,可以算其中一个优点吧;

2/jsp本省就可以算一个模板了,优点就是有sun/oracle的支持;

3/velocity相对freemarker来说就是能直接调用对象方法,到底是不是优点各持己见,关乎于你对mvc概念的理解

4/其实彼此性能差别不大,等你的站点到达上1000w或者更高在去考虑性能问题吧,小站点是好用上手快

(c)2008-2025 自学教育网 All Rights Reserved 汕头市灵创科技有限公司
粤ICP备2024240640号-6