拦截器的实现原理
ssss对于拦截器的实现原理,其实是非常简单的,在前几篇文章我们已经分析了,请求映射原理最核心的方法是 doDispatch(request, response),因此我们通过 deBug 方式在doDispatch处打断点学习具体的参数处理是如何工作的,其中的核心方式有获取处理器执行器,映射器,执行目标方法,页面渲染等。 在这其中,其实还穿插着一些拦截器的相关方法执行。
自定义拦截器的实现步骤
ssdsadssdas
dsdssss我们可以发现,拦截器是一个接口,一共有三个方法,我们可以重写这三个方法,对其进行自定义拦截。
dssss①、编写HandlerInterceptor接口
@Slf4j
@Configuration
public class LoginInterceptor implements HandlerInterceptor {
/**
* 目标方法执行之前* @param request* @param response* @param handler* @return* @throws Exception
*/
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
String requestURI = request.getRequestURI();
log.info("preHandle()拦截的请求路径是()"+requestURI);
//登陆检查逻辑
HttpSession session = request.