为什么要前后端分离?传统开发的病点!

发布于 2019-10-02  957 次阅读


现在前后端分离越来越火,向阿里这样的大公司也基本不在要全栈工程师了!那这都是为什么呢?

一、Jsp的痛处

如果说进军 Java Web 最绕不过的,无疑就是 Jsp 了,无论是Spring MVC,还是Struts,其本基都是 Servlet 的包装,这就意味着它们的 V (视图)都将躲不过Jsp。

Jsp虽说是在html中加Java代码,但是它本身不是html,其它也并不是,jsp的java代码会被转成 Servlet。但也正由于它本身不是html,这就表现出了很多问题,前端设计要用html设计,而后端要把html改成jsp,这中间可能会出多少错误,大概用过的人都清楚。而无论是前端还是后端,在开发时都要相互研究,连锁多。无法真的前后端分离,后端想要改代码,还要了解前端的一些东西,至此前后端又多少问题骂战就不说了。

二、升级版的Thymeleaf

thymeleaf其本身更像是jsp的升级版,其实际依然无法完成真正的前后端分离,但距以往的Jsp,确实完成了很多改革。

前端可直接调试,不用在启动容器,这确实是一大进步,基本解决了最痛的前端不好调试。但基实它还是不能做到真正的前后端公离,因为后端开发的人还是在改html,这就意味着,前后端依然无法真正的前后端分离

三、Json的崛起

做为最简单的前后端后离方案,Springboot + Vue 都已经被提出来好久了。其实,本身原理很简单,后端返回的不在是视图,而是 Json数据,而前端则是处理Json数据,这样,前后端只要约定好数据的传递的细节,就可以完全自己搞自己的,而 @RestController 也就是专门为该方案而设计的注释。

四、结语

做为较为合适的前后端分离的基本结构,Springboot + vue 的组合确实不错,但现在相关两者使用的书确实很少,希望为来能多一些


欢迎来到欧喵的博客,喜欢就看看吧