1、用户向服务器发送数据请求,请求被前端控制器DispatcherServlet拦截;
2、DispatcherServlet对请求的url进行解析,获取到uri(请求资源标识符),根据该uri调用HandlerMapping获得该Handler配置的所有的相关的对象(包括Handler对象以及Handler对象对应的拦截器),最后一HandlerExecutionChain对象的形式返回
3、DispatcherServlet根据获得的Handler,选择一个合适HandlerAdapter(附注:如果成功获得HandlerAdapter后,此时将开始执行拦截器的preHandler(...)方法)
4、开始执行Handler,也就是Controller层
5、Controller中的逻辑代码执行完成之后,将会返回一个ModelAndView对象
6、根据返回的ModelAndView,选择一个ViewResolver(视图解析器)返回
7、视图解析器对返回的数据进行数据解析渲染
8、将渲染的结果返回给用户