session必须要销毁吗,为什么?
1个回答
展开全部
======一般手动销毁是在退出登录状态的情况下的,所以不是必须要销毁的
我们利用HttpSessionListener 接口来监听session的创建和销毁,从下图可以看出,当我们关闭服务器时,session并没有调用他的sessionDestroyed方法.
2. 即当我们关闭客户端浏览器时,Session并没有被销毁,还在服务器端,只不过客户端一旦把浏览器关闭掉以后,再去开一个新的窗口,之前的SessionID就再也访问不到了,因为SessionID是通过Cookie保存在浏览器进程中的,浏览器一旦关掉,所对应的Cookie也就消失了,当你把浏览器窗口关闭时,客户端并没有想服务器发送任何请求,服务器也收不到客户端提交过来的任何东西,所以服务器的那个Session依然还在那里存活着,当你在重新开一个窗口时,服务器会针对这个新的页面,发送一个新的SessionID,这个新的SessionID显然跟以前那个SessionID是不一样的,两者之间没有任何关系,这样客户端就会对应一个新的session上,而服务器端原有的那个会话则一直存在,一直等到超时,服务器端的session就销毁掉了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询