java servlet监视器,Servlet监听器Listener

0、Listener是Servlet的一个功能组件:

(1)用于application,session,request三个对象创建、销毁

(2)向其内部添加、修改、删除属性时自动执行代码;

(3)可监听客户端的请求,服务端的操作等;

1、分为一下三类:》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》

(1)ServletContext监听;

(2)Session监听

session超时配置(web.xml):

120

session无效:

public void invalidate();//使session失效方法。session.invalidate();

(3)Request监听;

2、在web.xml中配置:》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》

(1)Listener配置信息必须在Filter和Servlet配置之前;

(2)ServletContentListener比Servlet和Filter都优先,而销毁比Servlet和Filter都慢;

3、spring使用ContextLoaderListener加载ApplicationContext配置信息;》》》》》》》》》》》》

(1)启动Web容器时,自动装配ApplicationContext配置信息;

(2)实现了ServletContextListener这个接口;

(3)web.xml中不写任何参数配置信息,默认的路径是"/WEB-INF/applicationContext.xml";

(4)或自己配置:

contextConfigLocation

classpath:xml/spring-context.xml

4、Spring使用IntrospectorCleanupListener清理缓存:》》》》》》》》》》》》》》》》》》》》

(1)作用:在web应用关闭时刷新JDK的JavaBeans的Introspector缓存;

(2)刷新Introspector缓存可以确保Web应用程序的类加载器以及其加载的类正确的释放资源;

(3)Introspector被用来分析应用程序类,系统级的Introspector缓存将持有这些类的硬引用;

(4)硬引用使得这些类和Web应用程序的类加载器,在Web应用程序关闭时不会被垃圾收集器回收;

(5)IntrospectorCleanupListener清理硬引用,保证其可以被回收;

(6)刷新整个Introspector缓存是唯一清理方法;

(7)使用Spring内部的bean机制时,不需要使用此监听器,Spring本身不产生泄漏;

(8)简单Introspector泄漏将会导致整个Web应用程序的类加载器不会被回收;

(9)类加载器不会被回收导致:该应用程序所有的静态类资源(比如:单实例对象)都没有得到释放;

(10)IntrospectorCleanupListener应该注册为web.xml的第一个Listener,保证整个web应用生命周期;

5、支持注解《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《

(1)Servlet3.0中的监听器跟之前2.5的差别不大,唯一的区别就是增加了对注解的支持;

(2)@WebListener注解,可以取代web.xml文件中配置;

org.springframework.web.context.ContextLoaderListener

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值