关于session对象的疑问
来源:3-5 ServletContext与三大作用域对象
哆丶哆
2019-07-11 01:33:16
老师,在学习session对象中,教学视频中讲到session的ID会保存在cookie中,可是session默认有效期是30分钟啊,那如果给cookie的有效期设置为7天的话,那么这个session对象能在服务器内保留这么长时间么?毕竟客户端的cookie保存了这个session的ID,因为视频讲到,通过session的id是可以确认这个session的数据存放空间的。
此外,我很疑惑,当浏览器关闭重启的时候,再次访问项目某页面。Tomcat是会把这次的浏览器访问当成一个全新的浏览器么?因为我看到视频中重启浏览器访问项目某个页面时,里面的session的ID值变了,原本里面的数据也没了。如果是这样的话,那session的有效期的意义何在呢?当一个网站需要保存用户数据7天的话(类似7天内自动登录),要怎么才能用session对象的方式实现它呢?
1回答
同学你好!
session为30分钟,cookie为7天,那么30分钟后session就会失效呢。seesion对象的生命周期只与session有关,不受cookie的影响
虽然cookie保存了seesionId,如果session过期了,那么当前seesionId所对应的session对象就访问不到了
再次访问时的确是会把它当做一个全新的来对待。session的有效期更多的见于长时间不操作页面时退出登录。
7天内自动登录,不是简单的设置session就可以呢。同学可以在博客中找一下它的实现方式,不建议同学现在学习呢。同学可以多积累点知识,再来看呢。
如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
相似问题