javaWeb三大组件之一的Filter(过滤器)一些基本的使用

本文介绍了JavaWeb中的Filter过滤器,它是javaweb三大组件之一,用于拦截资源请求进行权限控制、编码处理等。通过定义Filter类并实现相应方法,可以创建过滤器链。@webFilter注解用于指定拦截路径,例如全局拦截/*或特定资源。过滤器执行顺序由类名自然排序决定。过滤器在实际应用中常用于登录检查、编码转换和敏感字符过滤等功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概念:Filter表示过滤器,是javaweb三大组件(servelet,Filter,listener)之一.
过滤器可以把对资源的请求拦截下来,从而实现一些特殊的功能
过滤器一般完成一些通用的操作,比如:权限控制,统一编码处理,敏感字符处理...

比如权限控制:如现在的更多网站要你先登录才能访问其它资源

还有就是关于一些编码问题处理,敏感字符处理,如果很多资源都要设置这些可以把特闷提取到过滤器里面来有话,不然就代码重复了

Filter的一些基本使用

定义类,实现Fileter接口,并重写其所有方法
做完操作后要放行继续执行下面的代码,chain.deFilter(request,response);
执行放行前逻辑 -> 放行 ->访问资源 ->执行放行后逻辑
@webFilter("/*")表示拦截所有的资源
拦截具体资源:/index.jsp
目录拦截:/user/
后缀拦截:*.jsp

首先要注意这两点@webFilter("/*")里面写的不是访问路径而是拦截资源的路径,

还有就是deFilter();是调用的FilterChain的方法如图所示;

一个web引用,可以配置多个过滤器,这多个过滤器称为过滤器链
注解配置的Filter,优先级按照过滤器类名(字符串)的自然排序

列如Filter01先执行Filter02后执行;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值