SpringMVC——自定义拦截器
2017-09-13 17:31
239 查看
一、自定义一个拦截器类
二、配置文件
多个拦截方法的执行顺序
public class FirstInterceptor implements HandlerInterceptor{ /** * 渲染视图之后被调用. 释放资源 */ @Override public void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3) throws Exception { System.out.println("afterCompletion"); } /** * 调用目标方法之后, 但渲染视图之前. * 可以对请求域中的属性或视图做出修改. */ @Override public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView arg3) throws Exception { System.out.println("postHandle"); } /** * 该方法在目标方法之前被调用. * 若返回值为 true, 则继续调用后续的拦截器和目标方法. * 若返回值为 false, 则不会再调用后续的拦截器和目标方法. * 可以考虑做权限. 日志, 事务等. */ @Override public boolean preHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2) throws Exception { System.out.println("preHandle"); return true; } }
二、配置文件
<mvc:interceptors> <!-- 配置自定义的拦截器 --> <bean class="cn.springmvc.interceptors.FirstInterceptor"></bean> <!-- 配置拦截器(不)作用的路径 --> <mvc:interceptor> <!-- 配置拦截器作用的路径 --> <mvc:mapping path="/emps"/> <!-- 配置拦截器不作用的路径 --> <mvc:exclude-mapping path="/user_logout" /> <bean class="cn.springmvc.interceptors.SecondInterceptor"></bean> </mvc:interceptor> </mvc:interceptors>
多个拦截方法的执行顺序
myinterceptor1:preHandle() myinterceptor2:preHandle() myinterceptor2:postHandle() myinterceptor1:postHandle() myinterceptor2:afterCompletion() myinterceptor1 :afterCompletion()
相关文章推荐
- springMVC自定义拦截器
- SpringMVC 自定义拦截器
- SpringMVC自定义拦截器
- SpringMVC 自定义拦截器
- SpringMVC设置一个自定义拦截器
- SpringMVC自定义拦截器——实现自动装配Action字段
- SpringMVC 学习笔记(九) 自定义拦截器
- SpringMVC 自定义拦截器使用
- springmvc 中自定义拦截器
- SpringMVC自定义注解和拦截器实现控制器访问次数限制
- SpringMVC拦截器实例之自定义注解
- SpringMVC系列(十二)自定义拦截器
- JavaEE开发之SpringMVC中的自定义拦截器及异常处理
- SpringMvc自定义拦截器
- SpringMVC拦截器实例之自定义注解
- SpringMVC-14 自定义拦截器
- springmvc_6_自定义拦截器
- springMVC --拦截器详细,使用和自定义拦截器
- SpringMVC自定义拦截器——实现自动装配Action字段
- springMvc自定义拦截器HandlerInterceptorAdapter的认识