Spring-mvc运行原理
在学习Spring-MV后,对其原理进行总结如下:
spring-MVC是对spring框架提供构建web应用程序的MVC模块,
使得spring在web开发时,可以选择使用Spring的SpringMVC
框架或集成其他MVC开发框架,如Struts1,Struts2等。
1. 用户发起request请求,请求发送至DispatcherServlet前端控制器(SpringMVC提供)
2. DispatcherServlet前端控制器相当中央调度器,各各组件均和前端控制器交互,降低组件之间的耦合度3.HandlerMapping处理器映射器(由SpringMVC提供)根据XML或者注解查找Handler,将Handler返回给DispatcherServlet前端控制器
4.DispatcherServlet前端控制器调用处理器适配器(HandlerAdaper,SpringMVC提供)执勤Handler,
5.适配器执行Handler(后端控制器)(Model),
6.执行完成后返回ModelAndView(:springMVC的一个对象对Model和View进行封装)
7.适配器将ModelAndView返回给DispatcherServlet
8.DispatcherServlet调用视图解析器(ViewResolver,springMVC提供)进行视图解析,解析后生成View(Spring MVC:视图封装成对象,提供很多view,jsp,pdt…)
9.ViewResolver视图解析器给前端控制器返回view
10.DispatcherServlet调用view的渲染视图的方法,将模型数据填充到request域
11.DispatcherServlet向用户响应结果
下图是一个比较清晰的解释MVC内部流程