SpringMvc 源码解析
2021-04-18 13:15:37 19 举报
SpringMvc源码解析流程图
作者其他创作
大纲/内容
doDispatch()
HandlerAdapter ha = getHandlerAdapter(handler)
3. 返回处理器执行链
Handler处理器
ha.handle()
1. 发送请求
web浏览器
View视图
controller处理之前,在这里调用实现了preHandle()方法的拦截器
controller处理之前,在这里调用实现了preHandle()方法的拦截器会
6. 返回ModelAndView
HandlerExecutionChain mappedHandler=getHandler()
5. 执行控制层方法
DispathcherServlet
4. 获取适配器
11. 返回响应
applyPreHandle()
2. 获取处理器
doService()
applyPostHandle()
DispatcherServlet控制器
mappedHandler.getHandler()
ViewResolver视图解析器
applyDefaultViewName()
8. 视图解析
三种适配器:1. org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter:要求实现 Controller 接口2. org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter:要求实现HttpRequestHandler 接口3. org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter:要求是我们用注解@Controller 配置控制器
HandlerMapping处理器映射器
processDispatchResult()
9. 返回view
HandlerAdapter处理器适配器
HandlerExecutionChain
render()
controller处理之前,在这里调用实现了postHandle()方法的拦截器
0 条评论
下一页