Java 监听器

来源:互联网 发布:淘宝店以开启,怎么找货 编辑:程序博客网 时间:2024/06/05 07:43


* Listener:用于监听application/session/request对象触发事件时做的操作
* 1.使用步骤:首先创建类实现相应的监听接口,
* 在web.xml里添加listener配置信息,
* 重写监听方法,
* 当触发事件时,会直接调用相应的监听方法
* 以下是关于监听器的详细介绍:
* 1.SerlvetContextListener:
* 监听application对象初始化、销毁过程
* contextInitialized:初始化application对象时调用,获取初始化参数
* contextDestroyed:application对象销毁时调用的
* 2.ServletContextAttributeListener:
* 监听application对象属性添加、删除、修改的过程
* attributeAdded:application对象添加了新的属性时,触发该方法
* attributeRemoved:application对象删除了已有属性时,触发该方法
* attributeReplaced:application对象的已有属性,属性值放生改变时,触发该方法
* 3.HttpSessionAttributeListener:
* 监听session对象创建、销毁或修改的过程
* attributeAdded:当有新的session对象创建时,会被调用
* attributeRemoved:当有session对象被销毁时调用
* attributeReplaced:当session对象发生改变时会被调用
* 4.HttpSessionListener:
* 监听session对象的创建和销毁过程
* sessionCreated:当一个新的session对象创建时会被调用
* sessionDestroyed:当一个session对象被销毁时会调用
* session创建:当发起了一次请求时,如果已经存在session,则不会创建新的session
* 如果不存在session,则会创建一个新的session,
* 判断是否存在session的依据是request当中是否包含jsessionid
* session销毁:当默认时间到达时,session销毁,
* 手动调用session.invalidate方法时,会销毁session,
* 当服务器重启或关闭的时候,会销毁session
* 关于session有效时间的设置
* 1.在tomcat的web.xml里进行设置<session-config>—-—><session-timeout>
* 2.在项目里的web.xml里进行设置<session-config>—-—><session-timeout>
* 3.通过代码进行设置:session.setMaxInactiveInterval
* 设置session的时间单位是:分钟(这个时间有一定的偏差,不是十分准确的)
* 三种方式的优先级:3>2>1
* 5.ServletRequestListener:
* 监听request对象的创建和销毁
* requestInitialized:当request对象创建的时候被调用
* requestDestroyed:当request对象被销毁时被调用
* request创建时间:请求的一开始
* request销毁时间:页面响应时被销毁
* request如果是转发的方式:两个页面共享同一个request对象

* Listener:用于监听application/session/request对象触发事件时做的操作
* 1.使用步骤:首先创建类实现相应的监听接口,
* 在web.xml里添加listener配置信息,
* 重写监听方法,
* 当触发事件时,会直接调用相应的监听方法
* 以下是关于监听器的详细介绍:
* 1.SerlvetContextListener:
* 监听application对象初始化、销毁过程
* contextInitialized:初始化application对象时调用,获取初始化参数
* contextDestroyed:application对象销毁时调用的
* 2.ServletContextAttributeListener:
* 监听application对象属性添加、删除、修改的过程
* attributeAdded:application对象添加了新的属性时,触发该方法
* attributeRemoved:application对象删除了已有属性时,触发该方法
* attributeReplaced:application对象的已有属性,属性值放生改变时,触发该方法
* 3.HttpSessionAttributeListener:
* 监听session对象创建、销毁或修改的过程
* attributeAdded:当有新的session对象创建时,会被调用
* attributeRemoved:当有session对象被销毁时调用
* attributeReplaced:当session对象发生改变时会被调用
* 4.HttpSessionListener:
* 监听session对象的创建和销毁过程
* sessionCreated:当一个新的session对象创建时会被调用
* sessionDestroyed:当一个session对象被销毁时会调用
* session创建:当发起了一次请求时,如果已经存在session,则不会创建新的session
* 如果不存在session,则会创建一个新的session,
* 判断是否存在session的依据是request当中是否包含jsessionid
* session销毁:当默认时间到达时,session销毁,
* 手动调用session.invalidate方法时,会销毁session,
* 当服务器重启或关闭的时候,会销毁session
* 关于session有效时间的设置
* 1.在tomcat的web.xml里进行设置<session-config>—-—><session-timeout>
* 2.在项目里的web.xml里进行设置<session-config>—-—><session-timeout>
* 3.通过代码进行设置:session.setMaxInactiveInterval
* 设置session的时间单位是:分钟(这个时间有一定的偏差,不是十分准确的)
* 三种方式的优先级:3>2>1
* 5.ServletRequestListener:
* 监听request对象的创建和销毁
* requestInitialized:当request对象创建的时候被调用
* requestDestroyed:当request对象被销毁时被调用
* request创建时间:请求的一开始
* request销毁时间:页面响应时被销毁
* request如果是转发的方式:两个页面共享同一个request对象