WEB开发——过滤器(filter、filterChain、filterConfig、过滤器部署、处理浏览器缓存、字符集乱码)

本文详细探讨了WEB开发中的过滤器Filter,包括filterChain、filterConfig的使用,过滤器的部署策略,如何处理浏览器缓存问题以及解决字符集乱码的方案。重点介绍了<dispatcher>元素在拦截请求中的不同方式,如REQUEST、INCLUDE、FORWARD和ERROR等。
摘要由CSDN通过智能技术生成
过滤器: Filter ,javax.servlet包下)
●  对Servlet容器调用Servlet的过程进行拦截,在Servlet进行响应处理的前后实现一些特殊的功能
●  Servlet API中定义了三个接口类来供开发人员编写Filter程序:Filter、FilterChain、FilterConfig
●  Filter程序是一个实现了Filter接口的Java类,与Servlet程序相似,它由Servlet容器进行调用和执行
●  需要在web.xml文件中进行注册和设置它所拦截的资源( Jsp, Servlet, 静态图片文件和静态html文件)
------------------------------------------------------------------------------------------------------------------
基本工作原理:
●  当注册了Filter拦截处理时,这个Filter就成了Servlet容器与该Servlet程序的通信线路上的一道关卡,可以对Servlet容器发送给Servlet程序的请求和回送进行相应拦截,决定是否将请求继续传递,以及对请求和相应信息是否进行修改
●  可以注册多个Filter程序,每个Filter程序都可以对一个或一组 Servlet 程序进行拦截
●  多个Filter程序对某个Servlet程序的访问过程进行拦截,web容器将把这多个Filter程序组合成一个Filter链(过滤器链)。Filter链中各个Filter的拦截顺序与它们在应用程序的web.xml中映射的顺序一致
------------------------------------------------------------------------------------------------------------------
Filter接口:

init():
在web应用程序启动时,web 服务器将根据 web.xml 文件中的配置信息来创建每个注册的 Filter 实例对象,并将其保存在服务器的内存中。Web容器创建 Filter 对象实例后,将立即调用该 Filter 对象的 init 方法。Init 方法在 Filter 生命周期中仅执行一次,web 容器在调用 init 方法时,会传递一个包含 Filter 的配置和运行环境的 FilterConfig 对象(FilterConfig的用法和ServletConfig类似)。利用FilterConfig对象可以得到ServletContext对象,以及部署描述符中配置的过滤器的初始化参数。在这个方法中,可以抛出ServletException异常,通知容器该过滤器不能正常工作
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值