---恢复内容开始---

1.过滤器简介:

过滤器是一个用于拦截在数据源和数据目的地之间消息的一个对象。

过滤器 功能:

分析请求,将请求发送给指定的资源或自己创建一个响应返回;在请求到达服务器端前处理请求,设置请求信息,将请求封装成符合规则的对象在响应到达客户端前处理响应,将响应封装成符合规则的对象

不同功能的过滤器:

身份验证过滤器(Authentication Filters)
数据压缩过滤器(Data compression Filters)
加密过滤器(Encryption Filters)
触发资源访问事件过滤器(Filters that trigger resource access events )
图像转换过滤器(Image Conversion Filters)
日志记录和审核过滤器(Logging and Auditing Filters)
MIME-TYPE 链过滤器(MIME-TYPE Chain Filters)
标记化过滤器(Tokenizing Filters)
XSL/T 过滤器(XSL/T Filters),转换 XML 内容。

过滤器的执行:

过滤器处理请求采取以下3种行动之一
过滤器自身产生一个响应,返回给客户端
把请求转发给过滤器链中的下一个过滤器,如果是最后一个过滤器则将请求转发给请求指定资源
把请求转发到另一资源。

过滤器实例:

AuthorityFilter
编码(实现Filter接口)
部署(在web.xml配置)
注册过滤器
配置虚拟路径
运行

2.过滤器AI

Filter接口:

init()方法
Servlet容器最先调用过滤器的init()方法,初始化过滤器,生命周期中只调用一次
doFilter()方法
Servlet容器调用doFilter()方法处理请求
destroy()方法
Servlet容器最后调用destroy()方法,释放过滤器所占的资源。

接口/类

所处包

描述

Filter

javax.servlet

过滤器类实现此接口

FilterChain

javax.servlet

该接口实现对象实例由容器负责创建

FilterConfig

javax.servlet

提供初始化参数

ServletRequestWrapper

javax.servlet

ServletRequest接口的便利实现

ServletResponseWrapper

javax.servlet

ServletResponse接口的便利实现

HttpServletRequestWrapper

javax.servlet.http

HttpServletRequest接口的便利实现

HttpServletResponseWrapper

javax.servlet.http

HttpServletResponse接口的便利实现

3.配置过滤器:

<filter>
     <filter-name>

<filter-class>

<description>

<init-parm>

<parm-name>

<parm-value>

<filter-mapping>

<filter-name>

<url-pattern>

Filter过滤器链:

Web容器加载的顺序:web.xml文件中配置的Filter的倒序
拦截执行顺序:web.xml文件中配置的Filter的正序
销毁顺序:web.xml文件中配置的Filter的倒序

Filter注意事项:

Filter配置过滤器链
Servlet容器可以对同一个过滤器对象运行多个线程来同时处理多个请求。

6.过滤器(Filter)相关推荐

  1. ----------------------过滤器filter简单登录和乱码过滤----

    web.xml里面的代码 <?xml version="1.0" encoding="UTF-8"?> <web-app version=&q ...

  2. ⑧javaWeb之在例子中学习(过滤器Filter)

    前言 本系列 Servlet & JSP 学习系列[传送门]逐渐到了中期了,希望大家喜欢我写的,总结的点点滴滴- 今天我们来讲讲过滤器 你们的支持是我写博客的动力哦. 最近买了两本书,觉得大二 ...

  3. 一场由过滤器Filter引发的血案

    一场由过滤器Filter引发的血案 事件起因 本来应该是下图的登录界面 变成了这样 What's the fuck????? 抓狂 原因 解决方法: 在过滤器中给资源文件开个绿色通道

  4. Java web—Servlet过滤器(Filter)

    前言:         过滤器是Servlet中一个非常重要的组成部分,进行WEB开发时无不用到过滤器:因此这篇blog来单独总结下关于过滤器的知识点. 一.首先来了解一下什么是过滤器: 下面这句话引 ...

  5. ITK:过滤器Filter和ParallelizeImageRegion比较

    ITK:过滤器Filter和ParallelizeImageRegion比较 内容提要 输出结果 C++实现代码 内容提要 本示例演示如何利用MultiThreaderBase :: Parallel ...

  6. ITK:复制过滤器filter

    ITK:复制过滤器filter 内容提要 输出结果 C++实现代码 内容提要 复制/复制过滤器 输出结果 2 C++实现代码 #include "itkAbsImageFilter.h&qu ...

  7. 【若依(ruoyi)】shiro 内置的过滤器(filter)

    前言 shiro: 1.5.3 若依(ruoyi): v4.3 (测试shiro的环境) shiro 内置的过滤器(filter) Filter Name Class anon org.apache. ...

  8. Springmvc中的拦截器interceptor及与过滤器filter的区别

    一.Springmvc中的拦截器概述及与过滤器filter的区别 1).Springmvc中的拦截器interceptor用于对控制器controller进行预处理和后处理的技术; 2).可以定义拦截 ...

  9. JavaWeb中监听器Listener+过滤器filter+拦截器interceptor区别

    JavaWeb中监听器Listener+过滤器filter+拦截器interceptor区别 如果从整个项目中看,一个servlet请求的执行过程就变成了这样context-param–>lis ...

  10. filter导致跨域失效_Quarkus中过滤器filter和跨域cors问题(4)

    前言 Quarkus中的web模块是基于java标准web规范jax-rs构建的,实现则选用了jboss的resteasy.这部分只是请求路由转发部分实现.真正的请求接收则使用了eclipse开源的v ...

最新文章

  1. Linux_VMWare12 Install RHEL7
  2. Chargen DoS攻击
  3. mysql8.0其他机器访问_论文导读|基于机器学习的高速缓存预取
  4. Centos 7或者说linux 怎么一直运行一个项目,自己退出终端也在运行
  5. python参数化_Python 中如何实现参数化测试的方法示例
  6. 51单片机基本刷屏测试实验_基于单片机的发动机振动速度、位移和加速度测量方法...
  7. 高斯拟合 vc++代码_使用python+sklearn实现核岭回归和高斯回归的比较
  8. Java学习笔记之设计模式(6)观察者模式
  9. pdo怎么建mysql表_PDO操作数据库的基本步骤
  10. linux下简单好用的端口映射转发工具rinetd
  11. html5广告的版式设计,永不过时!5种网页版式设计分享
  12. 物质模拟器4.0版 改了bug,爆炸时也可移动
  13. 项目 6 统计雇员薪水
  14. rtmp推流工具_小熊录屏:支持RTMP直播录屏的手机APP——墨涩网
  15. 申请美国商务签证(B1/B2) -- 大连
  16. SAR成像系列:【8】合成孔径雷达(SAR)成像算法-压缩感知(Compressed Sensing,CS)成像算法(附Matlab代码)
  17. day18-面向对象作业
  18. 提升eBay店铺流量的方式有哪些?
  19. 不忘初心,方得始终。初心易得,始终难守!
  20. 杨小玲,典型的南方全能原创歌手

热门文章

  1. PHP仿金蝶云ERP进销存V8网络多仓版源码
  2. 【CRMEB知识付费系统v1.4.4】
  3. 新编计算机应用基础项目教程电子书,计算机应用基础新编教程-殷锋社.pdf
  4. linux host命令超时,Linux中的PING命令。每日一个小知识。不怕学不会
  5. layui修改table中的按钮_layui数据表格中如何设置按钮切换(是否置顶)与分页居中...
  6. H5在线商城/全新商城支持团购优惠劵砍价
  7. Zibll子比主题版本V5.6-免授权版
  8. 微信壹佰超级名片小程序源码v1.1.16
  9. CentOS 7操作系统之Docker安装
  10. PHP API 框架开发的学习