您的位置:首页 > 其它

关闭浏览器后Session失效原因分析

2017-06-23 14:38 796 查看
 
1.从服务器的角度看:session的寿命周期默认是30分钟,这里指的是某个session对象在服 务器中的内存中的寿命。

2.从浏览器的角度看:当我们的浏览器首次访问服务器的某个servlet的时候会创建一个新的session对象(如果这个被访问的servlet有获取session对象的语句) 后会把此session对象的id号码通过cookie的方式回写到客户端浏览器,只不过默认的cookie寿命为-1 即当浏览器退出是此id已经不复存在,这样的话浏览器再次打开后拿不到这个已经丢失的id号码(本地缓冲中也没有就是因为默认的cookie寿命为-1), 再次访问的时候就无法找到那个session对象了(因为web服务器需要根据浏览器提供的sessionId 来标识某个对应的session对象)。

也就是说不管怎么样,浏览器要拥有一个session的id号码,每次的访问都会带着这个id号码去寻找服务器里面的session对象。 当然了这个session对象如果已经失效了,那么再有浏览器以这个失效的session对象id来寻找服务器中的session对象,服务器会从新创建一个新的session对象,并且把id 设置为这次浏览器带过来的这个id (就是说找不到这个id的session了 ,服务器给你创建一个同样id号的session,只不过这个session是全新的,没有以前的数据。) 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: