1、Filter过滤器
Filter过滤器是JavaWeb三大组件之一。三大组件分别是:Servlet程序,Listener监听器,Filter过滤器
Filter过滤器是JavaEE的规范,也就是接口
Filter过滤器的作用:拦截请求,过滤响应
2、Filter过滤器使用方法
编写一个类去实现Filter接口
实现过滤方法doFilter()
到web.xml中去配置Filter的拦截路径
3、Filter的生命周期
Filter的生命周期包含几个方法
构造器方法
init初始化方法
第1,2步,在web工程启动的时候执行(Filter已经创建)
doFilter过滤方法
第3步,每次拦截到请求,就会执行
destroy销毁方法
第4步,停止web工程的时候,就会执行(停止web工程,也会销毁Filter过滤器)
4、FilterConfig类
Tomcat每次创建Filter的时候,也会同时创建一个FilterConfig类,这里包含了Filter配置文件的配置信息。
FilterConfig类的作用是获取filter过滤器的配置内容
1、获取Filter的名称filter-name的内容
2、获取在Filter中配置的init-param初始化参数
3、获取ServletContext对象
5、FilterChain过滤器链
多个过滤器如何一起工作
![](https://i-blog.csdnimg.cn/blog_migrate/c1756c13ce16231a0c91f294a8bd288c.png)
6、Filter的拦截路径
精确匹配
![](https://i-blog.csdnimg.cn/blog_migrate/09f34ac8fb64e0470767564bdd47bf88.png)
以上配置的路径,表示请求地址必须为:http://ip:port/工程路径/target.jsp
目录匹配
![](https://i-blog.csdnimg.cn/blog_migrate/95e776925d86928c0ebb944c5fbbc38c.png)
以上配置的路径,表示请求地址必须为:http://ip:port/工程路径/admin/*
后缀名匹配
![](https://i-blog.csdnimg.cn/blog_migrate/88e0f1902def4644182a43a8f8f4baac.png)
以上配置的路径,表示请求地址必须为以html结尾的路径匹配