Spring Boot一部分取代了jsp:以前老的方式是:1.客户端请求 2.服务端的servlet或controller接收请求(路由规则由后端制定,整个项目开发的权重大部分在后端) 3.调用service,dao代码完成业务逻辑 4.返回jsp 5.jsp展现一些动态的代码新的方式是:1.浏览器发送请求 2.直接到达html页面(路由规则由前端制定,整个项目开发的权重前移) 3.html页面负责调用服务端接口产生数据(通过ajax等等) 4.填充html,展现动态效果。(有兴趣的童鞋可以访问一下阿里巴巴等大型网站,然后按一下F12,监控一下你刷新一次页面,他的http是怎么玩的,大多数都是单独请求后台数据,使用json传输数据,而不是一个大而全的http请求把整个页面包括动+静全部返回过来)这样做的好处是:1.可以实现真正的前后端解耦,前端服务器使用nginx。前端服务器放的是css,js,图片等等一系列静态资源(甚至你还可以css,js,图片等资源放到特定的文件服务器,例如阿里云的oss,并使用cdn加速),前端服务器负责控制页面引用,跳转,调用后端的接口,后端服务器使用tomcat。(这里需要使用一些前端工程化的框架比如nodejs,react,router,react,redux,webpack)2.发现bug,可以快速定位是谁的问题,不会出现互相踢皮球的现象。页面逻辑,跳转错误,浏览器兼容性问题,脚本错误,页面样式等问题,全部由前端工程师来负责。接口数据出错,数据没有提交成功,应答超时等问题,全部由后端工程师来解决。双方互不干扰,前端与后端是相亲相爱的一家人。3.在大并发情况下,我可以同时水平扩展前后端服务器,比如淘宝的一个首页就需要2000台前端服务器做集群来抗住日均多少亿+的日均pv。(去参加阿里的技术峰会,听他们说他们的web容器都是自己写的,就算他单实例抗10万http并发,2000台是2亿http并发,并且他们还可以根据预知洪峰来无限拓展,很恐怖,就一个首页。。。)4.减少后端服务器的并发压力,除了接口以外的其他所有http请求全部转移到前端nginx上。5.即使后端服务暂时超时或者宕机了,前端页面也会正常访问,只不过数据刷不出来而已。6.也许你也需要有微信相关的轻应用,那样你的接口完全可以共用,如果也有app相关的服务,那么只要通过一些代码重构,也可以大量复用接口,提升效率。7.页面显示的东西再多也不怕,因为是异步加载。