我正在参加「掘金·启航计划」
-
localStorage
生命周期:永久,除非手动删除
存储形式:键值对
存储容量:约20M
//存储数据 localStorage.getItem('name','val') //获取数据 localStorage.setItem('name','val') //删除数据 localStorage.removeItem('name') //清除所有数据 localStorage.clear() -
sessionStorage
生命周期:关闭浏览器
存储形式:键值对
存储容量:约5M
//存储数据 sessionStorage.getItem('name','val') //获取数据 sessionStorage.setItem('name','val') //删除数据 sessionStorage.removeItem('name') //清除所有数据 seaaionStorage.clear() -
cookie
在客户端请求服务器端和服务器响应时,cookie始终被携带在http请求中,即使不需要(造成流量浪费)。这也是限制cookie大小的原因。
生命周期:根据自己设置的过期时间
存储形式:键值对
存储容量:约4k
Cookie cookie = new Cookie("time","20080808"); // 新建Cookie cookie.setDomain(".helloweenvsfei.com"); // 设置域名 cookie.setPath("/"); // 设置"/"路径允许所有路径使用Cookie cookie.setMaxAge(Integer.MAX_VALUE); // 设置有效期永远有效 response.addCookie(cookie); // 输出到客户端 -
session
Cookie机制是通过检查客户身上的“通行证”来确定客户身份的话,那么Session机制就是通过检查服务器上的“客户明细表”来确认客户身份。Session相当于程序在服务器上建立的一份客户档案,客户来访的时候只需要查询客户档案表就可以了
存储形式:键值对
HttpSession session = request.getSession(); // 获取Session对象 session.setAttribute("loginTime", new Date()); // 设置Session中的属性 out.println("登录时间为:" +(Date)session.getAttribute("loginTime")); // 获取Session属性