页面会话技术介绍,什么是Cookie和Session
页面会话技术
Cookie
- 什么是cookie:服务端保存在浏览器端的数据片段。以 key/value的形式进行保存。每次请求的时候,请求头会自动包含本网站此目录下的 cookie 数据。网站经常使用这个技术来识别用户是否登陆等功能。
- 用途:保存登录状态,购物车等
- 缺点:
- 做为请求或响应报文发送,无形中增加了网络流量。
- 明文传送的安全性差。
- 保存数据是不稳定的,用户可以随时清理 cookie,各个浏览器对 Cookie 有限制,使用上有局限
Cookie的使用
服务器向客户端传Cookie
- 创建Cookie对象
Cookie cookie = new Cookie("key", "val");
- 将cookie放入response响应给客户端
response.addCookie(cookie);
可以同时设置多个Cookie
服务器获取客户端Cookie的值
- 获取Cookie
Cookie[] cookies = request.getCookies();
- 遍历cookies数组判断查找想要的值
Session
-
Session的特性
-
服务器会给每个用户创建一个Session对象
-
每个Session独占一个服务器,只要浏览器不关闭,这个Session就存在
-
一个Session可以访问此服务器(整个网站)的所有网页
-
Session在浏览器打开的一瞬间就存在
-
Session里可以保存对象
-
Session被注销会产生一个新的Session
-
-
和Cookie的区别
- Cookie将用户数据写给浏览器,由客户端浏览器保存
- Session吧用户数据写入用户独占的Session中,由服务器保存
- Session对象由服务器创建
Session的使用
-
获取Session
-
HttpSession session = request.getSession();
-
-
在Session中保存数据
-
session.setAttribute("key","value");
-
-
获取Session的Id
-
String sessionId = session.getId();
-
-
判断是否是新创建的
-
session.isNew();
-
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)