Java--Filter(过滤器)

简介

Filter也称之为过滤器,它是Servlet技术中最实用的技术,Web开发人员通过Filter技术,对web服务器管理的所有web资源,例如Jsp,

Servlet, 静态图片文件或静态 html 文件等进行拦截,从而实现一些特殊的功能。

实现URL级别的权限访问控制、过滤敏感词汇、压缩响应信息等一些高级功能。

配置

注解方式

@WebFilter("/*")//访问所有资源之前,都会执行该过滤器

public class Filter implements Filter {

@Override

public void init(FilterConfig filterConfig) throws ServletException {

}

@Override

public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {

System.out.println("filter被执行了....");

//放行

filterChain.doFilter(servletRequest,servletResponse);

}

@Override

public void destroy() {

}

}

web.xml

demo1

cn.itcast.web.filter.FilterDemo1

demo1

/*

过滤器生命周期方法

init

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

doFilter

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

destroy

在服务器关闭后,Filter对象被销毁。如果服务器是正常关闭,则会执行destroy方法。只执行一次。用于释放资源

过滤器配置详解

拦截路径配置

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

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

后缀名拦截: *.jsp 访问所有后缀名为jsp资源时,过滤器都会被执行

拦截所有资源:/* 访问所有资源时,过滤器都会被执行

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

注解配置:

设置dispatcherTypes属性 REQUEST:默认值。浏览器直接请求资源

FORWARD:转发访问资源

INCLUDE:包含访问资源

ERROR:错误跳转资源

ASYNC:异步访问资源

web.xml配置

设置标签

配置多个过滤器

执行顺序:如果有两个过滤器:过滤器1和过滤器2,具体过程?

过滤器1

过滤器2

资源执行

过滤器2

过滤器1

过滤器先后顺序问题

有两个过滤器先执行哪一个?

注解配置:按照类名的字符串比较规则比较,值小的先执行 如: AFilter 和 BFilter,AFilter就先执行了。

web.xml配置: 谁定义在上边,谁先执行

原文链接:https://www.cnblogs.com/guizimo/p/13280979.html

java 过滤器注解_Java--Filter(过滤器)相关推荐

  1. java过滤器的执行顺序_Java Filter过滤器(拦截路径的配置+拦截方式的配置+生命周期+多个过滤器的先后执行顺序)...

    Java Filter过滤器+Listen监听器 啥是过滤器 顾名思义即过滤掉一些东西,比如我们经历的高考中考都是过滤器,他过滤掉一些在学习这一方面不是很好的人,而那些成绩好的人则升入高中,大学. 但 ...

  2. java filter过滤器_JavaWeb之 Filter(过滤器)

    FIlter作用 过滤器JavaWeb三大组件之一,它与Servlet很相似!不它过滤器是用来拦截请求的,而不是处理请求的. 当用户请求某个Servlet时,会先执行部署在这个请求上的Filter,如 ...

  3. java 挥发注解_Java的挥发性修饰符

    java 挥发注解 不久前,我写了一个Java servlet过滤器,该过滤器在其init函数中加载配置(基于web.xml的参数). 筛选器的配置缓存在私有字段中. 我在字段上设置了volatile ...

  4. filter过滤器_JavaWeb之 Filter(过滤器)

    FIlter作用 过滤器JavaWeb三大组件之一,它与Servlet很相似!不它过滤器是用来拦截请求的,而不是处理请求的. 当用户请求某个Servlet时,会先执行部署在这个请求上的Filter,如 ...

  5. servlet过滤器 实例_Java Servlet过滤器示例教程

    servlet过滤器 实例 Java Servlet Filter is used to intercept the client request and do some pre-processing ...

  6. java threadsafe 注解_Java 注解详解

    什么是注解 Annotation 中文译过来就是注解.标释的意思,在 Java 中注解是一个很重要的知识点,但经常还是有点让新手不容易理解.而新手很难理解的主要原因是一些技术文档里的专业术语和名词不太 ...

  7. java path 注解_Java内置系统注解和元注解

    第一节:注解(Annotation)的作用 Annotation(注解)是JDK5.0及以后版本引入的.它的作用是修饰程序元素.什么是程序元素呢?例如:包.类.构造方法.方法.成员变量等. 注解,就是 ...

  8. java excel 注解_Java中注解学习系列教程-5 excel导出优化初级阶段

    在上一篇文章中,我们实现了使用自定义注解导出Excel的小案例.但是有问题的.我们发现,如果对象属性中包含了date类型或者使用了枚举类.这个时候就会出问题.我们来看看问题所在: 是不是已经看到了结果 ...

  9. java stream过滤_Java Stream过滤器

    java stream过滤 Java Stream filter can be very helpful when you want to do some processing only on som ...

  10. java straem 过滤_Java Stream 过滤器

    Java Stream 过滤器教程展示了如何使用过滤操作过滤 Java 流. Java 流 Java 流是来自源的支持聚合操作的一系列元素. 流不存储元素. 元素是按需计算的. 元素是从数据源(如集合 ...

最新文章

  1. Arduino可穿戴教程认识ArduinoIDE
  2. Shift-And / Shift-Or
  3. struct output SVM
  4. Leetcode 96. 不同的二叉搜索树 解题思路及C++实现
  5. Ubuntu 20.04 LTS安装搜狗输入法,只需三条命令,还能自动更新
  6. 几款让你爱不释手的语音转文字软件
  7. Mplayer 音频解码分析
  8. [iOS]UIDynamicAnimator动画
  9. 19年北理考研计算机复试分数多少钱,2019年北京理工大学考研复试分数线已出现...
  10. 【图像融合】基于matlab GUI小波变换彩色图像融合(含评价指标)【含Matlab源码 1756期】
  11. 惠普m132nw清零方法_惠普132nw硒鼓型号怎么加墨 惠普132硒鼓芯片清零
  12. 微信小程序input标签详解
  13. Mermaid知识点总结3 - Flowchart 2
  14. redis appendonly.aof文件损坏修复方法
  15. 知道浏览器下载的地方藏在哪里嘛?——看完你就知道
  16. 三年级信息技术用计算机娱乐,三年级上册信息技术教案
  17. MindStudio模型训练场景精度比对全流程和结果分析
  18. (转载)【笨木头Lua专栏】基础补充18:Lua的模块编写与module函数
  19. 【dvwa】--SQL注入
  20. BOM123编辑器(123BOM编辑器)是硬件工程师整理BOM的好帮手,3分钟完成一份BOM集成整理,很适合自己创业的工程师

热门文章

  1. 【IT软技能】如何使用中文维基百科
  2. (源码)在LibVLC中增加录制接口libvlc_media_player_recorder_start
  3. 如何理解“安全的本质是信任问题”
  4. c语言url下载文件,C/C++轻松实现文件下载
  5. Mysql数据库repair table 修复表
  6. 手机计算机数据消失了怎么恢复,手机数据丢失的恢复方法
  7. Kaggle数据集Telco-Customer-Churn.csv特征相关性分析(用LabelEncoder编码)
  8. 【电脑一点通】如何新建和切换Windows桌面
  9. 债券中的久期是什么意思
  10. Adobe illustrator 常用菜单命令和快捷键