File过滤器,概述。

1概念:

    * 生活中的过滤器: 净水器。空气净化器,土匪。

    *web中过滤器:当访问服务器资源,过滤器可以将请求拦截下来,完成特殊的功能。

    *过滤器的作用:

      一般用于完成通用的操作。如:登录验证、统一编码处理、敏感字符串过滤。。。

    快速入门:  

      1步骤:

        1定义一个类,实现接口Filter

        2复写方法

        3配置拦截路径

          1web.xml

          2注解 使用@WebFilter(“/拦截路径”)

     2。过滤器执行流程

        1执行过滤器

        2执行放行后的资源

        3最后执行过滤器放行后的代码。

    3过滤器生命周期的方法

      1init方法:在服务器启动后,会创建Filter对象,然后调用init方法,只执行一次。用于加载资源

      2doFilter:每一次请求被拦截资源时,会执行,执行多次

      3destory:在服务器关闭后,Filter对象被销毁。如果服务器是正常关闭的,那么会执行destory方法,用于释放资源。

    4过滤器配置详解

      1具体资源路径: /index.jsp     只有访问index.jsp资源时,过滤器才会被执行

      2拦截目录:/user/*   访问/user下的所有资源时,过滤器都会被执行

      3后缀名拦截: *.jsp 访问后缀是jsp的资源时过滤器会被执行

      4拦截所有资源 /*  访问任何资源都会被拦截

    拦截方式配置:资源被访问的方式

      注解配置

      设置dispatcherTypes属性    

        1REQUEST:默认值。浏览器直接请求资源

        2FORWARD:转发访问资源  

        3INCLUDE:包含访问资源

        3Error:错误跳转资源

      web.xml配置

        *设置<dispatcherTypes></dispatcherTypes>标签。

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

      执行顺序

        1过滤器1

        2过滤器2

        3执行资源

        4过滤器2

        5过滤器1

    过滤器先后执行顺序    

      1注解配置:按照类名字符串比较规则比较,值小的先执行  

        如Afileter 和Bfilter 那么Afilter就会先执行

      2web.xml配置

        按照配置的先后顺序,配置咋前面的先执行

一般使用httpServletRequest

  和httpServletRequest 才可以获取uri 或者url

        

原文地址:https://www.cnblogs.com/qmk-716/p/12154454.html