SpringMVC的工作原理
学习Springmvc已经有一段时间,但是对其运行原理一直模棱两可,晚上趁有时间看了几篇博客,顺着源码捋了一遍,记录一下,已备复习。
a. 用户向服务器发送请求,请求被springMVC前端控制器 DispatchServlet捕获;
b. DispatcherServle对请求 URL 进行解析,得到请求资源标识符(URL),然后根据该URL 调用 HandlerMapping将请求映射到处理器HandlerExcutionChain;
c. DispatchServlet 根据获得 Handler选择一个合适的 HandlerAdapter适配器处理;
d. Handler 对数据处理完成以后将返回一个 ModelAndView()对象给DisPatchServlet;
e. Handler 返回的ModelAndView()只是一个逻辑视图并不是一个正式的视图,DispatcherSevlet通过ViewResolver试图解析器将逻辑视图转化为真正的视图View;
h. DispatcherServle通过 model 解析出ModelAndView()中的参数进行解析最终展现出完整的view 并返回给