文章插图
Spring MVC为何诞生?记得在Spring MVC组件没出来之前,我们会用什么框架?SSI、SSH(Spring Struts Hibernate)、SSM(当然现在也是SSM) 。那么Spring MVC诞生的背景是什么?Struts真的就那么差吗?这里有必要说一下Java web框架的发展史:JSP/Servlet、Struts1.x、Struts2.x、Spring MVC 。
Java Web的发展史Model 1模型

文章插图
model 2模型,步入MVC时代

文章插图
MVC框架诞生
Struts1.x

文章插图
Struts2.x

文章插图
思考:为什么Struts2会被淘汰?Spring MVC
答案是:1. 漏洞太多,修不过来;2.Spring 太火了能用Spring 搞定的事情你会用其他框架吗,这种很少,我们可以看到招聘要求,很多时候都会要求Spring Mybatis这些框架能力,而很少提起Struts2了

文章插图
Spring MVC实现原理是什么?本质是什么?在JSP、Servlet编码泛滥的那个年代,我们会写很多的Servlet,Filter,需要调整各种顺序,在web.xml里配置各种配置 。我们都知道编写Java Web都离不开其核心Servlet,那么Spring MVC是如何搞的,它能脱离规范吗?答案是:不能 。
Spring MVC离不开Servlet,其本质就是Servlet,然后在Servlet执行的流程上添加了很多特性 。
其核心就是DispatcherServlet

文章插图
Spring MVC工作流程,可以发现其核心就是DispatcherServlet,其他的都是流程中的扩展,让整个处理流程可以更容易扩展,解耦性更强 。

文章插图
为何如此发展
分析发展路线图、分析核心版本,追根溯源 。Spring发展史

文章插图
Spring的核心版图可以看到其版图已经从原来的IOC容器和AOP后来扩张到了Web领域、Dao领域、ORM领域以及一些常用的JEE组件领域 。

文章插图
最后,当然Spring已经延伸出了Spring Boot、Spring Cloud以及现阶段的Spring Cloud Data Flow,接下来我们也会一点点剖析其本质 。
推荐阅读
- 诸葛恪是诸葛亮的什么人,诸葛恪是一个什么样的人
- 李重茂当了多久的皇帝,李重茂与李隆基的关系
- 汉献帝刘协是一个怎样的人,汉献帝知道刘备称帝了吗
- 西魏文帝是谁,北魏的宇文家族
- Java中的封装、继承和多态,你真的都懂了吗
- 人参花有什么功效,人参花泡水喝的功效有什么
- Spring MVC 框架搭建配置方法及详解
- 桂花可以直接泡水喝吗,新鲜的桂花晒干后可以泡水喝吗
- 妇科炎症常喝两种水,远离妇科炎症
- 洛神花的图片与功效,洛神花的功效与作用
