什么是Session?
存在服务器(tomcat为例子)的一个会话管理对象
什么是Cookie?
存在浏览器端的一个小型文本文件(用来存相关数据的)
什么是SessionId?
用来获取Session回话的一个序列号(由随机值 + 实际 + jvm的id)jvm的id由硬件信息计算得出
Session是什么时候创建的?
HttpSession session =requset.getSession();创建得到, 同时可以通过session.getId()得到 SessionIdSession和Cookie的作用?
都是用来存用户的数据信息,都有有效期,都可以通过对应手段存到文件中
(Cookie在使用的过程中是在内存中的,关闭浏览器就会消失)除非存文件中
(Session存在服务器中,有一定的存储时间)
实际的开发之间的使用流程
一、浏览器请求服务器,在服务器上通过request.getSession()产生session对象
HttpSession session =requset.getSession();
二、通过产生的session对象获取sessionId
String sessionId = session.getId()
三、将sessionId返回给浏览器,存进cookie中
- 获取cookie
Cookie[] cookies = request.getCookies();
- 对cookie进行操作(增、删、改、查、存)
- 返回给浏览器
response.addCookie(cookie);
Cookie的相关操作
创建方式获取cookie对象: Cookie cookie = new Cookie(name, value);
扫描二维码关注公众号,回复: 8807078 查看本文章已有方式获取Cookie对象: Cookie[] cookies=req.getCookies();
Cookie对象中的数据操作:
1、 获取名称:cookie.getName()
2、 获取值: cookie.getValue()
3、设置名称:cookie.setName()
4、设置值:cookie.setValue()设置Cookie的存留时间 例如:cookie.setMaxAge(365 * 24 * 60 * 60);单位秒
保存Cookie对象到浏览器:response.addCookie(cookie);
设置Cookie存储路径:cookie2.setPath("/");
更新Session中的数据
session.setAttribute 保存(方法会默认保存)
session.getAttribute 获取