zoukankan      html  css  js  c++  java
  • 过滤器Filter

    1.filter的简介
      filter是对客户端访问资源的过滤,符合条件放行,不符合条件不放行,并且可以对目标资源访问前后进行逻辑处理

    2.快速入门
      步骤:
      1)编写一个过滤器类实现Filter接口
      2)实现接口中尚未实现的方法(着重实现doFilter方法)
      3)在web.xml中配置(主要是配置要对那些资源进行过滤)

    3.filter的执行顺序
      看的是filter-mapping的前后顺序 而不是看filter的顺序

    4.匹配方式
      1)完全匹配
      <filter-mapping>
      <filter-name>QuickFilter1</filter-name>
      <url-pattern>/servlet1</url-pattern>
      <filter-mapping>

      和上面等价的是
      <filter-mapping>
      <filter-name>QuickFilter1</filter-name>
      <servlet-name>Servlet1</servlet-name>
      <filter-mapping>
    2)目录匹配
      <filter-mapping>
      <filter-name>QuickFilter1</filter-name>
      <url-pattern>/aaa/*</url-pattern>
      <filter-mapping>
    3)扩展名匹配
      <filter-mapping>
      <filter-name>QuickFilter1</filter-name>
      <url-pattern>*.jsp</url-pattern>
      <filter-mapping>

    5.dispatcher:访问的方式
      request:默认值,代表直接访问某个资源执行filter
      forward:转发时才执行filter
      include:包含资源时执行filter
      error:发生错误时 进行跳转是执行filter
      上面的英文都大写

      <filter-mapping>
      <filter-name>QuickFilter1</filter-name>
      <url-pattern>/*</url-pattern>
      <dispatcher>REQUEST</dispatcher>
      <filter-mapping>

    6.总结Filter的作用
      1)公共代码的提取
      2)可以对request和response中的方法进行增强(装饰者模式)
      增强有3中方式:继承/装饰者模式/动态代理
      3)进行权限控制

  • 相关阅读:
    USACO Grass Planting
    洛谷 P3178 [HAOI2015]树上操作
    史上最全NOIP初赛知识点
    史上最全的CSP-J/S 第一轮知识点
    洛谷 P1886 滑动窗口
    背包九讲—简单背包
    NOIP 2005 采药
    洛谷 P2357 守墓人
    NOI 2015 软件包管理器
    洛谷 P3384 【模板】树链剖分
  • 原文地址:https://www.cnblogs.com/moster/p/7921563.html
Copyright © 2011-2022 走看看