- 用户请求DispathcerServlet(前端控制器)。
- (前端控制器)DispatcherServlet接受到请求,将根据请求信息交给处理器映射器(HandlerMapping)。
- 处理器映射器(HandlerMapping)根据用户的url请求查找匹配该url的Handler(通常是controller),并返回一个执行链。
- DispacherServlet再根据执行链请求处理器适配器(HandlerAdapter)。
- 处理器适配器调用相应的handle进行处理。
- 对应的handler处理完成后返回ModelAndVIew给处理器适配器。
- 处理器适配器将接受的ModelAndView返回给DispatcherServlet。
- DispatcherServlet请求视图解析器来解析视图。
- 视图解析器处理完后返回View对象给DispacherServlet。
- 最后前端控制器对View进行视图渲染(即将模型数据填充至视图中)。
参考:
https://www.jianshu.com/p/651055f78e6b
https://www.cnblogs.com/leskang/p/6101368.html
自己理解:
→用户请求dispathcerServlet(前端控制器)
→前端控制器请求handlerMapping(处理器映射器) 根据用户的url查找具体的的handler 并返回一个执行链
→前端控制器(dispacherSrevlet)在根据执行链请求处理器适配器(handlerAdpter)
→处理器适配器(handlerAdpter)调用相应的handler(通常是controller)进行处理,完成后返回ModelAndVIew给处理器适配器。
→处理器适配器(handlerAdpter)将接受的ModelAndView返回给前端控制器(dispatcherServlet)。
→前端控制器(dispatcherServlet)请求视图解析器来解析视图。返回View对象给dispacherServlet。
最后前端控制器对View进行视图渲染(即将模型数据填充至视图中)返回页面上。