JSP等模板引擎已死,大前端为趋势
我们先来看一下tomcat版本数据:
我们可以看到,从tomcat8之后JSP就再没有新的支持了,tomcat8大概是2013年发布的,也就是说,从2013年开始jsp技术已经实质上不被官方继续维护了。
再从java框架springboot来看,默认就是不支持jsp的,后台模板引擎默认是themleaf,但这并不能代表themleaf是未来趋势,因为前端技术在后端技术进步的同时在飞速发展。
自从JamesGosling开发Java语言,SUN大力推行基于Java的从前端到后端的完整的企业级解决方法(J2EE),发展至今基于服务器端JSP技术地位与处境已经越来越尴尬。JSP技术的兴起与发展得益于WEB技术推广与发展,但是伴随着WEB2.0发展与富客服端应用(RIA)的发展,基于JSPTag的web伪前端技术表现的越来越无力。如今伴随着更多的富客户端技术的发展与不断的走向成熟,其中具有代表性的为Angular、React、Vue等,同时伴随着ajax技术以及HTTP长连接协议Bayeux广泛应用,而且已经成为RFC标准文档之一。而且伴随着各大浏览器厂商对HTML5的大力支持,WEB开发应用新一轮的技术革新已经成为定局。在这种情况下,曾经风云一时的JSP/Tag模板引擎技术没落是不可逆转。
J2EE中传统的前端依靠JSP Tag技术封装,依靠服务器解析,完成页面预编译之后,通过HTTP发送到用户浏览器端。那些数不清的JSP标签库/TAG库,由于缺乏必要的技术规范各大厂商完成的千差万别。很多时候已经成为影响J2EE开发效率的一大死穴。JSP等模板引擎作为伪前端技术(实际上是服务器端技术)有如下弊端:
1. 标签库没有统一标准,各大厂商完成不一,常使开发者晕头转向
2. 本身不是一种前端与后端分离的技术,不能实现前端与后端各自的语言独立
3. 不是好的富客户端技术,GWT虽然可以用为富客户端前端技术,但是也是基于Java
4. 前端与后端数据交换XML/JSON支持不够灵活,不是天生支持Ajax
反观Angular、React、Vue等前端技术,主要有以下显著特点:
1. 前台与后台语言独立,
2. 内嵌支持Ajax
3. 灵活的数据交换支持XML/JSON
4. 前后端独立语言的好处,理论上后端可以支持任何语言
现在很多新开发的WEB应用,Java作用主要在后台,但浏览器端越来越与Java无关是无关的,这个就是WEB2.0的威力,Div + CSS + Json的数据交换以及Javascript库(ExtJS, JQuery)的应用,足以已经使前端开发与后端开发完全分离,这些完全得益于ajax/Bayeux(Comet)等技术助推。伴随着HTML5技术的进一步推广,独自在后端闭门造车的行为变得尤其愚蠢。而且近些年发展迅猛的虚拟Dom技术类框架Angular、React、Vue,配合Redux、dva等数据流方案,使得大前端的时代已然真正的降临。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
2018-04-22 linux创建指定大小的文件