首页 > 其他 > 详细

验证多个Filter过滤一个资源时执行顺序

时间:2015-02-01 23:03:20      阅读:378      评论:0      收藏:0      [点我收藏+]

当有多个Filter过滤一个资源时,执行顺序到底是怎样?

如下测试:

   定义两个Filter,FirstFilter,SecondFilter,它们过滤同一个index.jsp页面,并且SecondFilter的映射写在FirstFilter后面

   并在两个Filter的doFilter()方法中加上输出语句:

      例如FirstFilter的doFilter方法:

@Override
    public void doFilter(ServletRequest request, ServletResponse response,
            FilterChain chain) throws IOException, ServletException {
        System.out.println("FirstFilter doFilter begin--------------------1");
        chain.doFilter(request, response);
        System.out.println("FirstFilter doFilter end  --------------------2");
    }

同理SecondFilter,标上3,4

在index.jsp页面中写Java代码输出5:<% System.out.println("index.jsp--------------------------------------5");%>

启动tomcat后,访问index.jsp,控制台输出如下:

FirstFilter doFilter begin--------------------1
SecondFilter doFilter begin---------------------3
index.jsp--------------------------------------5
SecondFilter doFilter end  ---------------------4
FirstFilter doFilter end  --------------------2

从上面结果看来,不难看出执行顺序了

验证多个Filter过滤一个资源时执行顺序

原文:http://www.cnblogs.com/javamilan/p/4266219.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!