拦截器与过滤器方法内参数不同,多了一个Object handler,在请求进入控制层前,spring mvc 会将请求交给handler处理,handler参数就是用来描述处理请求的,从上面的demo可以看出来 他的类型是handlerMethod的,处理的请求的是BrowserAuthenticationController
preHandler(): 这个方法是在controller调用之前调用,通过返回true或者false决定是否进入Controller层
postHandler():在请求进入控制层之后调用,但是在处理请求抛出异常时不会调用
afterCompletion(): 在请求处理完成之后,也就是在DispatherServlet渲染了视图之后执行,也就是说这个方法必定是执行,包含异常信息,它的主要作用就是清理资源
网友评论