Article
过滤器Filter使用中需要注意的点
00 分钟
2020-4-27
2023-5-21
type
status
category
date
slug
summary
tags
icon
Last edited time
May 21, 2023 07:57 AM

零、快速入门使用

  1. 定义一个类,实现Filter接口
  1. override方法
  1. 配置拦截路径
      • web.xml
      • 注解

一、配置

配置过滤器一般使用注解或者xml

1、webxml

与servlet配置类似

2、注解

@WebFIlter("/*")

二、过滤器执行流程

三、过滤器生命周期方法

doFilter
每一次请求被拦截资源时会执行
init
在服务器启动后,会创建FIlter对象,然后调用init方法用于加载资源
destory
在服务器关闭后,FIlter对象被销毁,如果服务器正常关闭,则会执行destroy方法用于释放资源

四、过滤器配置详解

1、拦截路径的配置

  1. 具体资源路径
    1. /index.jsp只有访问index.jsp资源时,过滤器才会被执行
  1. 拦截目录
    1. /user/*访问/uer下的所有资源时,过滤器都会被执行
  1. 后缀名拦截
    1. *.jsp访问所有后缀名为jsp资源时,过滤器都会被执行
  1. 拦截所有资源
    1. /*访问所有资源时,过滤器都会被执行

2、拦截方式的配置

资源被访问的方式
  1. 注解配置
      • 设置dispatcherTypes属性
          1. REQUERST:默认值
            1. 浏览器直接请求资源
          1. FORWARD:转发访问资源
          1. INCLUDE:包含访问资源
          1. ERROE:错误跳转资源
          1. ASYNC:异步访问资源。
  1. web.xml配置

    五、过滤器链(配置多个过滤器)

    1、执行顺序

    如果有两个过滤器,1和2
    执行
    1. 过滤器1
    1. 过滤器2
    1. 资源
    1. 过滤器2
    1. 过滤器1

    2、过滤器先后顺序

    1. 注解配置
      1. 按照类名的字符串比较规则比较,值小的先执行AFliter与BFilter,则A先执行
    1. web.xml配置
      1. 谁定义在上面,谁先执行
         
         
         

    评论