`

jsp、freemarker、velocity优点与缺点

    博客分类:
  • Java
阅读更多
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简介和对比

    - **性能与资源消耗**:Freemarker不编译成类,避免了PermGen空间消耗的问题,而JSP和Velocity可能会遇到此类问题。 - **模板加载灵活性**:Freemarker提供了一系列模板加载器,支持从不同来源加载模板;而JSP和...

    jsp静态化总结(jsp2html)

    2. **框架辅助**:使用如FreeMarker、Velocity等模板引擎,它们可以在运行时生成静态HTML,或者使用Struts2的StaticContentFilter进行静态化。 3. **自动化工具**:通过一些自动静态化工具,如SiteMesh、JSP2HTML等...

    jsp原理及框架

    3. **模板引擎**:许多框架如FreeMarker、Velocity等,它们的模板语言和JSP有相似之处,学习JSP有助于理解和使用这些模板引擎。 然而,随着Web技术的发展,JSP的缺点也逐渐显现,如代码混合、维护困难等问题。因此...

    java web 开发详解

     优点: 对覆盖绑定(overriding binding)、验证(validation)等提供生命周期管理 与许多表示层技术/框架无缝集成:JSP/JSTL、Tiles、Velocity、FreeMarker、Excel、XSL、PDF 等 便于测试——归功于IoC 缺点: ...

    FreeMarker技术指南

    FreeMarker与JSP和Velocity相比,具有以下优点: 1. 不允许在模板中编写Java代码,从而实现了严格的MVC分离。 2. 有助于实现美工和技术人员的工作分离,提高开发效率。 3. 页面是静态化的,有利于搜索引擎的收录。 4...

    Java五大框架技术选型对比与优缺点.doc

    2. Struts2 支持多种类型的视图,包括 JSP、Velocity、Freemarker 等。 3. Struts2 提供了许多有用的标签和宏,能够简化开发过程。 Struts2 框架的缺点: 1. Struts2 的学习曲线较陡,需要一定的 Java 基础和 MVC ...

    jsp模板测试工程

    常见的JSP模板引擎有FreeMarker、Velocity和Thymeleaf等。这些模板引擎各有特点,例如FreeMarker以其简洁的语法和高效的性能受到欢迎,Velocity则以其易学易用和良好的可扩展性著称。 在进行JSP模板的运行效率测试...

    spring boot 支持 jsp 的源代码

    在 Spring Boot 中,默认并不支持 JSP,因为它的默认视图解析器是 Thymeleaf、Freemarker 或者 Velocity 等模板引擎,而不是传统的 JSP。但是,通过一些配置,我们可以让 Spring Boot 项目支持 JSP。 首先,要理解...

    JSP基础(PDF)

    - 使用模板引擎(如FreeMarker、Velocity)替代JSP,提升性能和可维护性。 综上所述,"JSP基础(PDF)"文档可能涵盖了这些主题,帮助初学者理解JSP的基本概念、用法以及在Web开发中的角色。通过深入学习和实践,...

    jsp个人博客毕业设计代码、论文

    6. **模板引擎**:可能使用FreeMarker或Velocity等模板引擎,实现页面布局和样式。 **五、毕业论文撰写要点** 1. **背景与意义**:阐述个人博客在互联网上的作用,以及使用JSP开发的必要性。 2. **技术选型**:...

    [论坛社区]深圳JSP技术盈盈论坛 .zip

    5. **模板引擎**:早期的JSP项目可能没有使用现代的模板引擎,如FreeMarker或Velocity,但可能使用了内置的JSP标签库(Tag Libraries)来提高代码的可读性和复用性。 6. **国际化与本地化**:由于使用了UTF-8编码,...

    JAVA动态生成word和pdf

    - **缺点**:需要编写Freemarker或Velocity模板,打造HTML结构,对前端技术有一定要求。 综上所述,选择JAVA动态生成Word和PDF的技术时,应根据项目具体需求、团队技能、跨平台需求等因素综合考虑。对于Word文档,...

    JFinal-基于 Java 语言的极速 WEB + ORM 框架

    JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发...多视图支持,支持FreeMarker、JSP、Velocity 强大的Validator后端校验功能 功能齐全,拥有struts2的绝大部分功能 体积小仅218K,且无第三方依赖

    Java Web层框架比较.docx

    - **优点**:架构简洁,易于扩展,支持FreeMarker或Velocity定制标记库,可以基于控制器或页面进行导航。 - **缺点**:文档组织混乱,对新功能过于专注,可能导致开发者找到的是Struts 1.x的资料,而不是Struts 2...

    JAVA框架对比(author:Matt raible)

    - 能无缝集成多种视图选项,如JSP/JSTL、Tiles、Velocity、FreeMarker,甚至Excel和PDF,提供了高度的灵活性。 - 基于IoC(Inversion of Control)的设计使其易于测试。 - 缺点: - 配置密集型,需要大量的XML...

    Java框架面试题总结.pdf

    - Struts2支持多种结果类型,如FreeMarker、Velocity等。 - Struts2引入了OGNL(Object-Graph Navigation Language)表达式语言,增强了数据绑定。 12. **Struts的常用标签库**: - `html`标签库:用于创建HTML...

    Struts2应用开发详解01

    此外,Struts2支持多种结果类型,如JSP、FreeMarker、Velocity等,使得视图层的实现多样化。 二、MVC模式解析 MVC模式是软件设计中的一种经典架构,主要用于分离应用程序的数据模型、用户界面和控制器逻辑。在...

    前后端分离系统架构概述.docx

    由于趋势问题,会 JSP,懂 velocity,freemarker 等模板引擎的前端越来越少。 因此,方式一和方式二具有共同的缺点: 1. 前端无法单独调试,开发效率低; 2. 前端不可避免会遇到后台代码,例如:<body> ("utf-8...

    struts详细文档讲解及实例

    同时,Struts 2支持多种视图技术,如FreeMarker、Velocity等。 六、Struts的优缺点 优点: - 规范化开发,遵循MVC模式。 - 易于扩展和维护。 - 强大的标签库,简化视图层开发。 - 丰富的插件和社区支持。 缺点: -...

Global site tag (gtag.js) - Google Analytics