session and cookie

服务端发送给客户端
服务端准备Cookie
response.addCookie(Cookie cookie)
页面跳转(转发 重定向)
客户端获取cookie: request.getCookie();


a 服务端增加cookie:response对象:客户端获取对象:request对象
b 不能直接获取某一个单独对象,只能获取全部对象


建议cookie中只保存 英文数字 否则需要进行编码 解码
使用cookie实现 记住用户名 功能

session 机制:
客户端第一次请求服务端时,服务端会产生一个session对象(用于保存该客户的信息);
并且每个session 对象 都会有一个唯一的sessionId(用于区分其他sesson);
服务端会 产生一个cookie 并且该co第二次okie 的name=JESSIONID;value =服务端sessionId的值;
然后 服务端会在 响应客户端的同时 将该cookie发送给客户端。至此 客户端就有了一个 cookie(JESSIONID);
因此,客户端的cookie 就可以和服务端的session一一对应(JSESSION -sessionID)

注意:request数据只在同一次请求有效

客户端第二次/n次请求服务端:服务端会先根据客户端cookie中的JSESSIONID 去服务端的session中匹配sessionid,如果匹配成功(cookie jsessionid和session sessionid)
说明此用户不是第一次访问,无需登录


session方法
String getId(): 获取sessionId
boolean isNew():判断是否 新用户(第一次访问)
void invalidate():是session失效 (退出登录 注销)

setAttribute()
getAttribute()

原文地址:https://www.cnblogs.com/everest7/p/10622571.html