会话过程保存数据对象cookie和session
1 cookie是以键值对保存在浏览器端,服务器端可以创建、接收、发送 cookie 信息。
request可以接收 cookie, response 可以发送 cookie。
1)cookie 可以设置过期时间cookie.setMaxAge
- 正数,浏览器会将数据保存到硬盘中,如果没有超过过期时间,就可以一直访问。时间单位是秒。
- 负数,浏览器会将数据保存在内存中,关闭浏览器数据就会回收。
- 0,清除同名的cookie。
2)Cookie 可以设置有效路径 cookie.setPath(String path)。浏览器只有在有效路径下才会发送相应的cookie。
3)存放限制:浏览器一般只允许存放300个cookie,只可以存放英文、数字字符串,每个站点最多可以存放20个cookie,每个cookie大小限制为4kb。
2 session 将键值对保存到服务器端,获取session 对象,request.getSession()。
通过 JSESSIONID 的 cookie 值在服务器找 session 对象。该 cookie 值保存在浏览器端的内存中,因此关闭浏览器或者更换浏览器因为没有 sessionID,因此不是同一个会话;但是如果浏览器没有关闭,不同的 table 可以访问同一个session对象。
1) 可以修改 session 对象的保存时间,默认时间是半小时。
session.setMaxInactiveInterval(int) //单位是秒
全局修改session 保存时间,单位是分钟。
<session-fig> <session-timeout>time</session-timeout> </session-fig>
2)手动销毁session对象
void session.invalidate() //销毁session对象。
如果觉得有用,想赞助一下请移步赞助页面:赞助一下
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)