Filter和监听器

来源:互联网 发布:ctrl alt 互换 linux 编辑:程序博客网 时间:2024/06/11 06:22

Filter

简介

对资源的访问进行筛选(拦截),对请求和相应的拦截,从而实现一些特殊的功能

编写步骤:

1.编写一个类,实现javax.servlet.Filter方法


2.在web.xml中配置要过滤的资源

生命周期:

诞生:应用被加载时。配置好的过滤器会被容器实例化,接着初始化。

活着:应用活着,他就活着。针对用户的每次访问过滤器拦截范围内的资源,容器都会调用doFilter(SerlvetRequest,ServletResponse.FilterChain);

死亡:应用被卸载时,就会销毁,调用destory方法。


串联过滤器

多个过滤器对某个资源进行过滤,顺序是filter-mapping标签在web.xml中出现的顺序


过滤器的其他配置


监听器

servlet规范中的8个监听器

1、监听ServletContext、HttpSession、ServletRequest对象的创建和销毁的监听器

ServletContextListener:

HttpSessionListener:

SerlvetRequestListener:

2、监听ServletContext、HttpSession、ServletRequest属性(attributes)变化的监听器

ServletContextAttributeListener:

HttpSessionAttributeListener:

SerlvetRequestAttributeListener:

注意:监听器要注册到事件对象上。web.xml中注册

3、感知型监听器:不需要注册。

HttpSessionBindingListener:实现该接口的类的实例,能够感知自己何时被放到了HttpSession域范围中,和何时从HttpSession域范围中删除。

HttpSessionActivationListener:实现该接口的类的实例,能够感知自己何时随着HttpSession钝化和激活。


原创粉丝点击