名称 | 优点 | 缺点 | 使用场景 |
jsp |
1、功能强大,可以写java代码 2、支持jsp标签(jsp tag) 3、支持表达式语言(el) 4、官方标准,用户群广,丰富的第三方jsp标签库 5、性能良好。jsp编译成class文件执行,有很好的性能表现 |
JSP性能太致命了,前后端分离基本都不用他了。JSP动态资源和静态资源全部耦合在一起,服务器压力大,因为服务器会收到各种http请求,例如css的http请求,js的,图片的等等? |
适合初学者 老项目 不推荐项目使用 |
freemarker |
1、不能编写java代码,可以实现严格的mvc分离 2、在复杂页面上(包含大量判断、日期金额格式化)的页面上,性能非常不错 3、对jsp标签支持良好 4、内置大量常用功能,使用非常方便 5、宏定义(类似jsp标签)非常方便 6、使用表达式语言 7、FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出。FreeMarker与Web容器无关 |
1、不是官方标准 2、用户群体和第三方标签库没有jsp多 |
企业项目使用最多 |
velocity |
1、不能编写java代码,可以实现严格的mvc分离 |
1、不是官方标准 |
离线的使用Velocity,企业项目有使用 |
thymeleaf |
1、静态html嵌入标签属性,浏览器可以直接打开模板文件,便于前后端联调。springboot官方推荐方案。 | 1、模板必须符合xml规范,就这一点就可以判死刑!太不方便了!js脚本必须加入/ | 使用项目不多 |
原文地址:https://www.cnblogs.com/zeussbook/p/11214744.html
时间: 2024-08-30 10:08:45