过滤器的使用

0、代码链接

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

1、实现效果

1) 不使用过滤器:

 过滤器的使用_第1张图片

 过滤器的使用_第2张图片

 

 

2)使用过滤器:

过滤器的使用_第3张图片

 

过滤器的使用_第4张图片

过滤器的使用_第5张图片

 

 

2、实现思路

1. 创建过滤器

过滤器的使用_第6张图片

2、重写doFilter()

过滤器的使用_第7张图片

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

过滤器的使用_第8张图片

3、遇到的问题

filter没有执行:

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

过滤器的使用_第9张图片

扩展——过滤器:

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

  过滤器的使用_第10张图片

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

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

过滤器的使用_第11张图片

 

你可能感兴趣的:(过滤器的使用)