过滤器

本文详细介绍了JavaWeb中的过滤器(Filter),包括其作用、编写方法及配置方式。过滤器能在一组资源前执行,具有拦截请求的能力,并且遵循单例模式。文章还解释了Filter接口的方法及其生命周期。

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

JavaWeb三大主键:

Servlet,Listener(2个感知监听器不需要配置),Filter

都需要在web.xml中进行配置。

2. 过滤器
它会在一组资源(jsp、servlet、.css、.html等等)的前面执行!
它可以让请求得到目标资源,也可以不让请求达到!
* 过滤器有拦截请求的能力!

 

过滤器如何编写

1. 写一个类实现Filter接口
2. 在web.xml中进行配置

Filter接口

void init(FilterConfig)
* 创建之后,马上执行;Filter会在服务器启动时就创建!
void destory()
* 销毁之前执行!在服务器关闭时销毁
void doFilter(ServletRequest,ServletResponse,FilterChain)
* 每次过滤时都会执行

 

Filter是单例的!

web.xml
<filter>
<filter-name>xxx</filter-name>
<filter-class>cn.itcast.web.filter.AFitler</fitler-class>
</servlet>
<fitler-mapping>
<filter-name>xxx</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

-------------------------------------------

FilterConfig-->与ServletConfig相似
* 获取初始化参数:getInitParameter()
* 获取过滤器名称:getFilterName()
* 获取appliction:getServletContext()

-------------------------------------------

FilterChain
* doFilter(ServletRequest, ServletResponse):放行!
放行,就相当于调用了目标Servlet的service()方法!

 

--------------------------------------------

 

转载于:https://www.cnblogs.com/danyuzhu11/p/6740731.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值