存储

122 阅读1分钟

我正在参加「掘金·启航计划」

  1. localStorage

    生命周期:永久,除非手动删除

    存储形式:键值对

    存储容量:约20M

    //存储数据
    localStorage.getItem('name','val')
    //获取数据
    localStorage.setItem('name','val')
    //删除数据
    localStorage.removeItem('name')
    //清除所有数据
    localStorage.clear()
    
  2. sessionStorage

    生命周期:关闭浏览器

    存储形式:键值对

    存储容量:约5M

    //存储数据
    sessionStorage.getItem('name','val')
    //获取数据
    sessionStorage.setItem('name','val')
    //删除数据
    sessionStorage.removeItem('name')
    //清除所有数据
    seaaionStorage.clear()
    
  3. 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);                       // 输出到客户端
    
  4. session

    Cookie机制是通过检查客户身上的“通行证”来确定客户身份的话,那么Session机制就是通过检查服务器上的“客户明细表”来确认客户身份。Session相当于程序在服务器上建立的一份客户档案,客户来访的时候只需要查询客户档案表就可以了

    存储形式:键值对

    HttpSession session = request.getSession();       // 获取Session对象
    ​
    session.setAttribute("loginTime", new Date());     // 设置Session中的属性
    ​
    out.println("登录时间为:" +(Date)session.getAttribute("loginTime"));      // 获取Session属性