1、DispatcherServlet:
说明:中央控制器,也叫前端控制器,是整个请求响应过程的控制中心,组件的调用统一由它调度。
流程:①当用户向服务端发送一次请求后,这个请求会先到前端控制器DispatcherServlet。
2、HandlerMapping:
说明:处理映射器,他根据访问的url映射到对应的后端处理器Handler,也就是说他知道处理用户请求的后端处理器,但是它并不执行后端处理器,而是将这个处理器告诉中央处理器。
流程:②DispatcherServlet接收请求后会调用HandlerMapping处理映射器,可以由此得知改由哪个Controller来处理(并未调用Controller),③然后返回处理执行链。
3、Handler:
说明:后端处理器,对用户具体请求进行处理,也就是我们编写的Controller类
4、HandlerAdapter:
说明:处理适配器,它调用后端处理器中的方法,返回逻辑视图ModelAndView对象。
流程:④DispatcherServlet调用HandlerAdapter处理适配器,告诉它应该去执行哪个Controller,⑤然后处理适配器就去执行Controller⑥并返回ModelAndView对象给处理适配器,⑦再由处理适配器返回给DispatcherServlet。
5、ViewResolver:
说明:视图解析器,将ModelAndView解析成具体的视图(如jsp)。
流程:⑧DispatcherServlet将ModelAndView交给ViewReslover视图解析器解析,⑨然后返回真正的视图View给DispatcherServlet,⑩再由DispatcherServlet将模型数据填充到视图中,⑪最后将结果响应给用户。