前言:源码解析步骤以下图执行顺序为基础
查找源码对应路径
一、HandlerMapping获取method映射器
1、请求:mappedHandler = getHandler(processedRequest, false);
2、返回:HandlerExecutionChain mappedHandler = null;
3、HandlerExecutionChain中参数:
//HandlerMethod对象
private final Object handler;
//拦截器链,Spring中的拦截器必须实现这个接口
private HandlerInterceptor[] interceptors;
private List<HandlerInterceptor> interceptorList;
// 前置拦截器存在多个对象,标识当前调到了哪一个前置拦截器
private int interceptorIndex = -1;
二、Handler适配器控制器的获取
三、前置拦截器
四、HandlerAdapter.handle
具体调用到控制器某一个方法,实现业务逻辑的处理
五、中置拦截器
六、视图处理
processDispatchResult中render方法