Filter快速入门
1. 定义Filter:定义一个类,实现 Filter 接口,并重写其所有方法。
2. 配置Filter:Filter类上加 @WebFilter 注解,配置拦截资源的路径。引导类上加 @ServletComponentScan 开启Servlet组件支持
在易语言里面使用的时候有个注册前全局接口与注册后全局接口
@WebFilter(urlPatterns = "/*")
public class DemoFilter implements Filter {
@Override //初始化方法, 只调用一次
public void init(FilterConfig filterConfig) throws ServletException {
System.out.println("init 初始化方法执行了");
}
@Override //拦截到请求之后调用, 调用多次
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
System.out.println("Demo 拦截到了请求...放行前逻辑");
//放行
chain.doFilter(request,response);
System.out.println("Demo 拦截到了请求...放行后逻辑");
}
@Override //销毁方法, 只调用一次
public void destroy() {
System.out.println("destroy 销毁方法执行了");
}
}@ServletComponentScan
@SpringBootApplication
public class TliasApplication {
public static void main(String[] args) {
SpringApplication.run(TliasApplication.class, args);
}
}Filter执行流程
请求 --> 放行前逻辑 --> 放行 --> 资源 --> 放行后逻辑 
Filter拦截路径
Filter 可以根据需求,配置不同的拦截资源路径:

过滤器链
介绍:一个web应用中,可以配置多个过滤器,这多个过滤器就形成了一个过滤器链
评论