今日总结

2020年11月10日:

Session

 概念:

服务端会话技术,在一次会话的多次请求间共享数据,将数据保存在服务器端的对象中;

HTTPSession对象

  1. 获取Session对象:
    1. request.getSession()
  2. Session对象的方法:
    1. setAttribute(String name, Object value)
    2. Object getAttribute(String name)
    3. void removeAttribute(String name)

Session原理

在一次会话的范围内,不同的请求可能会都会创建session对象,而且在一次会话的session对象都是同一个。Session是依赖Cookie实现的,实现的过程如下:

  1. 当某次会话中首次创建Session对象时,会为该Session对象生成一个ID
  2. 在响应信息的信息头里带着一个SetCookie的头
  3. 浏览器收到响应信息,在浏览器创建一个 Cookie
  4. 浏览器下次请求,请求头会带着Cookie
  5. 当服务器试图创建Session对象时,首先判断内存中是否对应ID为 325803485DF8983D23D的Session对象,如果有就使用该Session对象

Session的特点:

  1. Session是用于存储一次会话的多次请求数据,存储在服务器端

  2. session可以存储任意类型的、任意大小的数据

  3. 与cookie的区别:

    CookieSession
    数据存储在客户端 数据存储在服务器端
    数据没有大小限制 数据有大小,数量限制
    数据相对安全 数据相对不安全
原文地址:https://www.cnblogs.com/yitiaokuailedexiaojingyu/p/14122349.html