- 客户端将请求发送给前端控制器。
- 前端控制器将请求发送给处理器映射器,处理器映射器根据路径找到(因为一个路径可能不止一个控制器方法,因为有的路径它会有拦截器,那他就会有拦截器方法和控制器的方法,所以它不止一个,所以就有一个方法的执行链)方法的执行链,返回给前端控制器。
- 前端控制器将方法的执行链发送给处理器适配器,处理器适配器根据方法类型找到对应的处理器(看看是控制器方法还是拦截器方法)。
- 处理器(就是拦截器或者控制器)执行方法完后,可能会有数据和视图,然后他就把数据和视图封装到一个modelAndView对象里面,返回给前端控制器。
- 前端控制器将结果(modelAndView)发送给视图解析器,视图解析器找到视图文件位置。ViewResolver解析后返回具体View给前端控制器;DispatcherServlet(前端控制器)使用model(模型)对View进行视图渲染(即将模型数据填充至视图中)并将结果返回显示到客户端。