DispatcherServlet:为中央控制器,它接收所有的客户端请求并将请求分配给相应的处理程序(handler),然后返回处理结果给客户端。也就是所有请求都得经过它,然后由它进行处理。
HandlerMapping:为映射处理器,用来检测url是否存在,并返回一个handler对象,交给DispatcherServlet在这其中还有HandlerExceptionIntercepter()处理拦截器进行异常处理或者是指定拦截(例如登录拦截),二者合称为HandlerExceptionChain
HandlerAdaptor:为处理器适配器,其调用处理器,找到对应的url,也就是自定义的controller层,controller会返回一个ModelAndView对象交给它,再由HandlerAdaptor交给DisPatcherServlet
ViewResolver:返回的ModelAndView在DispatcherServlet并不能直接返回给用户,还需要去解析视图,此时便交给了ViewResolver,在解析之后,再返回给DispatcherServlet,视图还需要进一步解析,进行渲染,仍旧是由DispatcherServlet进行处理
在处理完毕之后,再由DispatcherServlet交给用户