过滤器的使用

0、代码链接

链接:https://pan.baidu.com/s/1Mf9xM64HF-bL7ASb6M6lVQ
提取码:kkcl 

1、实现效果

1) 不使用过滤器:

 

 

2)使用过滤器:

2、实现思路

1. 创建过滤器

2、重写doFilter()

3、配置filter(Servlet3.0用@WebFilter将一个实现了javax.servlet.Filter接口的类定义为过滤器组件)

3、遇到的问题

filter没有执行:

虽然Servlet3.0提供@WebFilter注解将一个实现了javax.servlet.Filter接口的类定义为过滤器,这样我们在web应用中使用过滤器时,也不再需要在web.xml文件中配置过滤器的相关描述信息了。但是默认的@WebFilter注解中只有当前filter的路径信息,需要重新对该注解进行配置:

扩展——过滤器:

  过滤器是处于客户端与服务器资源文件之间的一道过滤网,在访问资源文件之前,通过一系列的过滤器对请求进行修改、判断等,把不符合规则的请求在中途拦截或修改。也可以对响应进行过滤,拦截或修改响应。

  

过滤器在链中的顺序与它在web.xml中配置的顺序有关

在doFilter()方法中,chain.doFilter()前的一般是对request执行的过滤操作,chain.doFilter后面的代码一般是对response执行的操作。过滤链代码的执行顺序如下:

原文地址:https://www.cnblogs.com/chacha-z/p/10659300.html