哈哈哈123457 2017-05-09 11:35 采纳率: 87.2%
浏览 1727
已采纳

freemarker和jsp的具体使用上的区别是什么 freemarker和EL表达式关系呢

freemarker和jsp的具体使用上的区别是什么 freemarker和EL表达式关系呢,还有一个velocity,都有啥区别,用哪个好,为什么

  • 写回答

1条回答 默认 最新

  • threenewbee 2017-05-09 16:07
    关注

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

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图