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)进行权限控制

  • 相关阅读:
    poj3181(Dollar Dayz)
    poj3666(Making the Grade)
    poj2392(Space Elevator)
    hdu5288(OO’s Sequence)
    hdu5289(Assignment)
    快学scala
    Spark Checkpointing
    Spark Performance Tuning (性能调优)
    Spark Memory Tuning (内存调优)
    Sparkstreaming and Kafka
  • 原文地址:https://www.cnblogs.com/moster/p/7921563.html
Copyright © 2011-2022 走看看