Servlet过滤器Filter个人理解
学习Servlet过滤器Filter时对其作用一直没理解透,写了一个简单的例子加深理解。
在web.xml中添加两个Filter,
添加对应的Java文件
FilterTest.java主要内容
FilterTest2.java主要内容
然后访问项目
发现控制台打印信息如下:
调整filter-mapping顺序,发现过滤器顺序也发生了改变
通过这个例子可以明白:
1、一个项目中可以设置多个过滤器
2、Servlet过滤器Filter是链式处理,即Filter1->Filter2->...,链式处理在代码中体现为:chain.doFilter(request, response);
3、访问一个链接,会先经过过滤器的处理,然后符合条件才能访问到资源
4、过滤器执行顺序与filter-mapping配置的前后顺序相关,排在前面的先执行。
过滤器可以做什么:
1、例如检测用户是否登录