web_18&filter过滤器&listener监听器

1.filter过滤器概述

过滤器实际上就是对web资源(HTML、CSS、Servlet、JSP)进行拦截,做一些处理后再交给下一个过滤器或servlet处理
通常都是用来拦截request进行处理的,也可以对返回的response进行拦截处理

2.filter过滤器使用场景


    自动登录
    统一设置编码格式
    访问权限控制
    敏感字符过滤等 

3. 创建一个servlet

1.继承HttpServlet

2.重写doGet 和 doPost方法

3.配置web.xml文件

<filter>
    <filter-name>servlet类名</filter-name>
    <filter-class>com.zking.filter.EncodingFilter(servlet绝对路径)</filter-class>
</filter>
<filter-mapping>
    <filter-name>servlet类名</filter-name>
    <url-pattern>/*(url通配符,作用对象)</url-pattern>
</filter-mapping>

4.filter过滤器常用配置项urlPatterns 

以指定资源匹配。例如"/index.jsp"
以目录匹配。例如"/servlet/*"
以后缀名匹配,例如"*.jsp"
通配符,拦截所有web资源。"/*"

5.Filter生命周期

(1)构造器:Filter的构造器在服务器启动时调用。 构造器只会调用一次,说明Filter也是单例多线程的。
(2)init():在构造器被调用后,紧接着被调用。作用:用来初始化Filter。
(3)doFilter():每一次拦截请求时都会调用。
(4)destroy方法在项目停止时调用,用来在对象被销毁前做一些收尾工作。

6.多个Filter的执行顺序

(1)在web.xml中,filter执行顺序跟<filter-mapping>的顺序有关,先声明的先执行
(2)使用注解配置的话,filter的执行顺序跟名称的字母顺序有关,例如AFilter会比BFilter先执行
(3)如果既有在web.xml中声明的Filter,也有通过注解配置的Filter,那么会优先执行web.xml中配置的Filter 

7.1 Listener监听器的创建( application监听器 session监听 )

负责监听Web的各种操作,当相关的事件触发后将产生事件,并对事件进行处理。

application监听器 implements ServletContextListener

 session监听 implements HttpSessionListener

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值