`

java三种表现层技术:jsp、freemarker、velocity

阅读更多
在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分离
分享到:
评论

相关推荐

    jsp、freemarker、velocity简介和对比

    本文将重点介绍三种常用的Java Web模板引擎:JSP(Java Server Pages)、Freemarker以及Velocity,并对它们进行深入比较。 #### JSP (Java Server Pages) JSP是一种基于Java技术的服务器端动态网页技术,通过在...

    模板:velocity和freemarker的比较

    在 WebWork2 中,我们可以随意选择使用 Freemarker 或 Velocity 作为 View,模板技术作为 View 的好处是很多,尤其和 JSP 比较起来优点更大。 Velocity 和 Freemarker 都是开源的模板技术,它们都提供了强大的功能...

    ftl与jsp比较

    实在是不明白FreeMarker比JSP好在什么地方,在java领域,表现层技术主要有三种:jsp、freemarker、velocity。

    大型商城网站springmvc+freemarker+velocity+ibatis

    它提供了请求处理、模型绑定、异常处理等功能,并支持多种视图技术,如JSP、Freemarker和Velocity。 2. **Freemarker**: Freemarker是一个模板引擎,用于生成动态HTML或其他文本格式的输出。在本项目中,...

    jsp-mysql三层架构模板

    在Web开发中,三层架构是一种常见的设计模式,它将应用程序分为表现层(Presentation Layer)、业务逻辑层(Business Logic Layer)和数据访问层(Data Access Layer)。这种架构模式有助于提高代码的可维护性、可...

    cms 网站管理系统 java+jsp java jsp

    Java是一种广泛应用于服务器端编程的强大且跨平台的编程语言,而JSP(JavaServer Pages)则是一种动态网页技术,它允许开发者将Java代码嵌入到HTML或XML文档中,以便在服务器端执行并生成动态内容。 Java CMS系统的...

    Velocity--java的模板引擎

    Velocity与JSP、FreeMarker等其他模板引擎相比,有其独特优势。Velocity的语法简洁,更接近自然语言,且由于它不支持脚本,避免了在模板中引入过多的业务逻辑,使得模板更加纯粹。此外,Velocity的性能也相对较高,...

    j2ee入门必备-BS架构涉及WEB开发相关技术介绍

    服务端技术是指 WEB 开发中服务端的技术,包括 JSP、Freemarker、Velocity、XSL 等页面模板层、Web 框架、Business Logic、O/R Mapping、JDBC 等技术。JSP 是一种服务器端编程语言,主要用于生成动态网页内容。...

    nutz的freemarker视图插件

    - Nutz的MVC模式中,视图层支持多种模板引擎,包括JSP、Velocity、Freemarker等。 2. **Freemarker**: - Freemarker是一个模板语言,它与Java代码分离,使得开发者可以专注于页面布局和设计,而无需关心业务逻辑...

    FreeMarker概述2008

    3. **通用数据模型**:FreeMarker通过插件式对象封装机制,使得Java对象能在模板中以变量形式显示。它支持抽象的表示方式,如JavaBean、XML文档等,让模板开发者无需关心底层技术细节。 4. **为Web准备**:内建处理...

    FreeMarker设计指南1

    FreeMarker是一款强大的模板引擎,常用于Java应用中的视图层渲染。相较于Velocity,FreeMarker具有更多的功能和灵活性,尤其在处理复杂模板逻辑时更为高效。本设计指南将深入讲解FreeMarker的一些关键特性。 1. **...

    JSP宝典源代码文件

    5. **模板技术**:如Freemarker或Velocity等,可以结合JSP用于更复杂的视图层构建。 6. **MVC模式**:虽然JSP自身可以实现模型-视图-控制器模式,但通常与Struts、Spring MVC等框架结合使用,以实现更规范的架构。 ...

    Java前沿技术.pdf

    3. Spring和Java EE的整合: 文档显示了Spring如何与Java EE技术如Servlets和JSP整合,形成了MVC(Model-View-Controller)架构,以实现分离的业务逻辑层、数据访问层和表现层。 4. Hibernate和ORM: Hibernate是一个...

    Struts2表现层技术.rar

    学习Struts2表现层技术,不仅要掌握如何使用标签库来编写JSP页面,还要理解Action、拦截器、OGNL的工作原理,以及如何利用Struts2提供的工具和机制来优化和扩展应用程序。对于新手来说,这是一个很好的起点,能够...

    高级Java人才培训专家-02-Freemarker.pptx

    Freemarker与其他几种模板引擎技术进行了对比,包括JSP、Velocity和Thymeleaf: - **JSP**:专为Servlet设计,不能独立使用。 - **Velocity**:更新缓慢,自2010年发布2.0版本以来,7年内未有更新。Spring Boot官方...

    JSP技术构建电子商务应用系统

    7. **模板引擎**:例如FreeMarker或Velocity,可以配合JSP实现更高效的视图渲染,提高性能。 **源代码分析** 在提供的源代码中,可能会包含以下部分: 1. **模型(Model)**:实现业务逻辑的Java类,可能包括商品...

    Velocity 入门

    - **FreeMarker**: FreeMarker 是另一个流行的 Java 模板引擎,它的语法比 Velocity 更为复杂,但功能更强大,适合复杂的模板逻辑。 - **JSP**: JSP 也是常见的视图技术,但它的动态代码嵌入到 HTML 中,易引发维护...

    FreeMarker设计指南(PDF版)

    ### FreeMarker设计指南知识点解析 #### 一、FreeMarker简介 **FreeMarker**是一个功能强大的模板引擎,专门用于基于模板生成...相比于Velocity等其他同类工具,FreeMarker在灵活性、扩展性和功能性方面表现更佳。

    jsp_library_book_ms_java_jsp_图书管理_

    图书管理系统通常采用三层架构设计:表现层(Presentation Layer)、业务逻辑层(Business Logic Layer)和数据访问层(Data Access Layer)。表现层由JSP页面构成,负责与用户交互;业务逻辑层处理业务规则和流程...

    java servlet jsp技术实现博客功能

    5. 模板引擎:尽管JSP本身就是一种模板技术,但为了更好地分离视图和逻辑,可以考虑使用FreeMarker或Velocity等模板引擎来渲染页面。 6. 数据库操作:使用JDBC(Java Database Connectivity)连接数据库,进行CRUD...

Global site tag (gtag.js) - Google Analytics