Filter&&Listener

Filter

通过注释配置

@WebFilter(" /* ")          访问任何资源都会被执行

chain.doFilter(Request,Response)           放行      

init方法执行一次

doFilter方法执行多次

destroy方法执行多次

拦截路径配置

具体的资源路径            /index.jsp
目录拦截                 /user/*             访问/user下的所有资源时,都会执行
后缀名拦截               *.jsp               没有/
拦截所有资源             /*                  拦截所有资源

拦截方式的配置:资源被访问的方式

  • REQUEST

  • FORWARD

  • INCLUDE

  • ERROR

  • ASYNC

@WebFilter(value = " /* ",dispatcherTypes = Dispatcher.REQUEST)

  //浏览器直接请求资源时,该过滤器会执行
@WebFilter(value = " /* ",dispatcherTypes ={ Dispatcher.REQUEST,Dispatcher.FORWARD})

//配置两种拦截方式

过滤器链(多个过滤器)

注解配置:按照类名的字符串比较规则比较,值较小的先执行

增强对象的功能

设计模式

 1.装饰模式

 2.代理模式

           真实对象:被代理的对象

           代理对象

           代理模式:代理对象的真实对象,达到增强真实对象的目的

      实现方式:

      1.静态代理

      2.动态代理

             实现步骤

                      1.代理对象和真是对象实现相同的接口

                      2.实现对象 = Proxy.newInstance();

                      3.使用代理对象调用方法

                      4.增强方法

Listener

事件监听机制

    事件:意见事情

    事件源:事件发生的地方

    监听器:一个对象

    注册监听器:将事件,事件源,监听器绑定在一起。事件源发生某个事件后,执行监听器代码
ServletConextListener:   监听SevletzContext对象的创建和销毁

void ContextDestroyed(ServletContextEvent sce): ServletContext      //对象被销毁前调用该方法

void ContextInitialized(ServletContextEvent sce):ServletContext    //对象创建后会调用该方法

步骤

1.定义一个类,实现ServletConextListener接口

2.复写方法

3.配置

     注解     直接写@WebListener

     web.xml
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值