会话相关的Listener

1.Servlet API中定义了4个用于监听会话中的各种事件的监听器接口,分别是HttpSessionListenerHttpSessionAttributeListenerHttpSessionBindingListenerHttpSessionActivationListener

2.HttpSessionListener接口可以监听创建会话的事件,它有如下2个方法:

(1)sessionCreatedHttpSessionEvent event),当Servlet容器创建一个会话,会调用此方法。

(2)sessionDestroyedHttpSessionEvent event),当Servlet容器将要销毁一个会话之前,会调用此方法。

3.HttpSessionAttributeListener接口可以监听向会话中加入属性、替换属性和删除属性等事件:

(1)attributeAddedHttpSessionBindingEvent event),当Web应用向一个会话中加入一个新属性时,容器会调用此方法。

(2)attributeRemovedHttpSessionBindingEvent event),当Web应用从会话中删除一个属性时,容器会调用此方法。

(3)attributeReplacedHttpSessionBindingEvent event),当Web应用替换了会话中一个已经存在的属性时,容器会调用此方法。

4.HttpSessionBindingListener接口可以监听会话与一个属性绑定或解除绑定的事件,它有如下两个方法:

(1)valueBoundHttpSessionBindingEvent event),当Web应用把一个属性与会话绑定后,容器会调用此方法。

(2)valueUnboundHttpSessionBindingEvent event),当Web应用将要把一个属性与会话解除绑定之前,容器会调用此方法。

5.HttpSessionActivationListener接口可以监听会话被激活和被搁置事件,它有2个方法:

(1)sessionDidActivateHttpSessionEvent event),当Servlet容器把一个会话激活后,容器会调用此方法。

(2)sessionWillPassivateHttpSessionEvent event),当Servlet容器将要把一个会话搁置之前,会调用此方法。

6.对于HttpSessionListenerHttpSessionAttributeListener,它们必须在web.xml文件中通过<listener>元素向Servlet容器注册,对于HttpSessionBindingListenerHttpSessionActivationListener,它们由会话的属性来实现,即实现这两个接口即可。

你可能感兴趣的:(会话相关的Listener)