Spring MVC实现原理

JavaEE体系结构
Spring MVC实现原理
什么是MVC
MVC是一种设计模式,它的产生是为了解耦和。
MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。
Classic Mvc模式:

  • Model:封装领域数据及逻辑。用于管理应用程序域的行为和数据,并响应为获取其状态信息(通常来自视图)而发出的请求,还会响应更改状态的指令(通常来自控制器)。
  • View:查询领域数据并展现给用户。用于管理信息的显示。
  • Conctroller:截获用户请求并改变领域数据。用于解释用户的鼠标和键盘输入,以通知模型和/或视图进行相应的更改。

MVC设计思想
原始的设计模式,每一层都和上一层之间有练习,耦合程度高,如果要修改某一层,那么上一层的代码也要修改。
Spring MVC实现原理
基于以上问题,就开发了MVC设计模式。
用来解决原始设计模式耦合度过高的问题。(任何的重定向都是解耦和)

Spring MVC实现原理
Sping MVC设计思想
那什么是SpringMVC?
Spring MVC是一个web层mvc框架,类似struts2.
整个实现流程 如下图:
Spring MVC实现原理
补充:
struts2的执行流程:

  • strutsPrepareAndExcuteFilter拦截请求(控制层),拦截请求,转发请求
  • 寻找Action执行
  • ActionProxy:strutsActionProxy extends defaultActionProxy
  • ActionMapping去寻找执行类Action