关于springMVC中的interceptor

关于spring的interceptor,这里给一个栗子注明各方法的作用

//以下是关于一个interceptor的基本方法
public class TestInterceptor01 implements HandlerInterceptor {

    //返回值表示是否要将当前请求拦截下来
    //如果返回false,请求将被终止,否则继续运行
    //Object参数表示的是被拦截的请求的目标对象
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        System.out.println("执行到preHandle");
        return true;
    }

    //ModelAndView可以用来改变显示的视图或者修改发往视图的方法
    public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
        System.out.println("执行到postHandle");
        modelAndView.setViewName("form");
        modelAndView.addObject("passWord","slksljfldls");
    }

    //视图返回之后的方法,主要用于销毁占用的资源
    public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
        System.out.println("执行到afterCompletion");
    }
}
然后的interceptor的配置
<mvc:interceptors>
    <mvc:interceptor>
<!-- path的值是该拦截器能够拦截的请求 -->
        <mvc:mapping path="/interceptor/demo01"/>
        <bean class="com.imooc.interceptor.TestInterceptor01"/>
    </mvc:interceptor>
</mvc:interceptors>

在一个项目中配置多个拦截器是可行的,但是其执行顺序是按照perHandle1——preHandle2——afterComletion2——afterCompletion1这样去执行的。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值