Cookie
- HTTP无状态。Cookie记录用户访问状态。存放在客户端。
- 用户的通行证。
- 后台的response写入键值对数据。
- 用户再次访问带上这个通行证。
- 检查某个网站的Cookie:在浏览器地址栏输入:
javascript:alert(document.cookie) - Cookie不可跨域
API: javax.servlet.http.Cookie
//to get cookie from client
Cookie[] cookies = request.getCookie();
// to write cookie 一个Cookie对象保存一个键值对
response.addCookie(Cookie cookie);
如下是Baidu的Cookie:
BaiduCookie.png
Session
- 服务器端记录客户端的访问状态
- 存放在服务器端的“客户明细表”
- 每个来访者对应一个Session对象
- JSP 内置Session隐藏对象
- <% page session="false" %> 则JSP中Session对象不可用
API: javax.servlet.http.HttpSession
// get session object.
HttpSession session = request.getSession();
// set session attribute
session.setAttribute("logintime", new Date());
// get session attribute
session.getAttribute("logintime");
// Attention to difference.
request.getSession(boolean create); // true 创建Session之后再返回
request.getSession(); //返回session,不存在则返回null。
网友评论