和监听——context一致,都有监听的触发方法及相应属性的监听。
实现了接口 HttpSessionListener
触发方法:
public void sessionCreated(HttpSessionEvent httpSessionEvent) {
}
@Override
public void sessionDestroyed(HttpSessionEvent httpSessionEvent) {
}
sessionCreated()
表示session创建的时候执行
sessionDestroyed()
表示session销毁的时候执行
相应的配置XML文件的映射路径
listener-class
如果是第一次访问,都会触发session创建,后续访问不会触发session的创建
关闭浏览器,再访问,也会触发session的创建。 但是有的浏览器,即便是关闭了,下一次打开,也会发送以前sessionid到服务器,这样服务器就不会创建新的session。
session的销毁不易观察到,一般说来服务器会设置session存活时间为30分钟。所以需要等待才能观察到销毁
D:\tomcat\work\Catalina\localhost_\SESSIONS.ser 这个文件。 这个文件是tomcat存放以前的session的
相应属性监听——编写SessionAttributeListener类:
实现接口 HttpSessionAttributeListener
attributeAdded()
当在session中增加属性时触发
attributeRemoved()
当在session中移除属性时触发
attributeReplaced()
当替换session中的属性时触发