Spring MVC框架简介
Spring MVC属于SpringFrameWork的后续产品,Spring MVC框架提供了构建web应用程序的全功能MVC模块,是一种轻量级Web框架。使用了MVC架构模式的思想,通过把Model,View,Controller分离,将web层进行职责解耦,把复杂的web应用分成逻辑清晰的几部分,简化开发。
Spring MVC的主要组件
1、DispatcherServlet前端控制器:
DispatcherServlet整个流程控制的中心,控制其它组件执行,统一调度,降低组件之间的耦合性,提高每个组件的扩展性。他的作用就是接收用户的请求,然后给用户响应结果。
2、HandlerMapping处理器映射器:
将指定的请求URL映射为对应的Handler(控制器),如果映射成功将返回一个HandlerExecutionChain对象(包含一个Handler处理器对象,多个HandlerInterceptor对象),允许存在多个实例。
3、HandlerAdapter处理器适配器:
将Handler包装为适配器,从而支持多种类型的处理器。
4、ViewResolver视图解析器:
通过视图解析器将ModelAndView对象中的View对象进行解析,得到具体的View。
SpringMVC运行原理/流程
执行流程
1、用户发送请求到前端控制器DispatcherServlet
2、DispatcherServlet收到请求调用处理映射器HandlerMapping
3、处理映射器根据请求url找到具体的处理器,生成处理器执行链HandlerExecutionChain(包含处理器对象和处理器拦截器)返回给DispatcherServlet
4、DispatcherServlet根据处理器Handler获取对应的适配器
5、HandlerAdapter调用处理器Handler
6、Handler(Controller)执行完成后返回ModelAndView
7、HandlerAdapter返回ModelAndView
8、DispatcherServlet统一将返回的ModelAndView派送到ViewResolve(视图解析器)解析
9,视图解析器解析之后返回具体View。
10、DispatcherServlet使用Model中的数据对View进行渲染视图。
11、DispatcherServlet返回最终结果给客户端,响应用户
文章参考:
https://blog.csdn.net/jiadajing267/article/details/81010741