文章目录
- 拦截器
- 一、SpringMVC配置文件
- 二、三个抽象方法
拦截器
一、SpringMVC配置文件
<!-- 配置拦截器--><mvc:interceptors><mvc:interceptor><mvc:mapping path="/**"/> <!---拦截的路径--><mvc:exclude-mapping path="/"/> <!----不拦截的路径--><bean class="com.mvc.intercepter.FirstIntercepter"></bean> <!---拦截器--></mvc:interceptor></mvc:interceptors>
public class FirstIntercepter implements HandlerInterceptor {@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {return false;}@Overridepublic void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {}@Overridepublic void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {}}
二、三个抽象方法
SpringMVC中的拦截器有三个抽象方法:
preHandle:控制器方法执行之前执行preHandle(),其boolean类型的返回值表示是否拦截或放行,
返回true为放行,即调用控制器方法;
返回false表示拦截,即不调用控制器方法
postHandle:控制器方法执行之后执行postHandle()
afterComplation:处理完视图和模型数据,渲染视图完毕之后执行afterComplation()