Cookie和Session学习的一些问题

本文详细探讨了Cookies和Sessions的工作原理,解释了Cookies与Sessions的关系,为何验证码存储于Session,以及如何通过设置Cookie使Session在关闭浏览器后仍能访问。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题1:如果cookie setpath了,不带cookie的情况下会带session

    答: 不会,没有cookie 何来session

问题2:验证码为什么存在session

答:Request 不行:除非生成验证码转发,业务没这个要求

ServletContext不行,别人会同时访问,立马覆盖掉

Session可以,属于客户端私有,针对每个客户端

问题3:要想关闭浏览器后20分钟,session对象还能被访问

答:手动创建一个持久化存储JSESSIONID的Cookie

//手动创建一个持久化存储JSESSIONID的Cookie

              Cookie cookie = new Cookie("JSESSIONID",id);

              cookie.setPath("/WEB16/");

              cookie.setMaxAge(60*10);

              response.addCookie(cookie);         

response.getWriter().write("JSESSIONID:"+id);

问题4:要想关闭浏览器后60分钟,session对象还能被访问

答:

不止手动创建一个持久化存储JSESSIONID的Cookie,因为session默认30分钟后销毁,到时候光有JSESSIONID,丢了session对象可不行

还要参照服务器web.xml的配置,修改项目web.xml,修改session-timeout属性

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值