聊聊Cookie和Session技术

97 阅读1分钟

一、Cookie

1.1 什么是 Cookie

  • 概念
    Cookie,有时也用其复数形式 Cookies。类型为“小型文本文件”,是某些网站为了辨别用户身份,进行Session跟踪而储存在用户本地终端上的数据(通常经过加密),由用户客户端计算机暂时或永久保存的信息。

  • 原理图示

2.2 应用场景

  • 自动登录。一般是将cookie信息加密后响应给客户端保存。当客户端再次发起请求,服务器将cookie信息解密,判断是不是先前的客户端,进而自动登录。

二、什么是 Session

2.1 什么是 Session

  • 概念     Session:在计算机中,尤其是在网络应用中,称为“会话控制”。Session对象存储特定用户会话所需的属性及配置信息。这样,当用户在应用程序的Web页之间跳转时,存储在Session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。当用户请求来自应用程序的 Web页时,如果该用户还没有会话,则Web服务器将自动创建一个 Session对象, 将其保存下来。。当会话过期或被放弃后,服务器将终止该会话。
  • 原理图示

session 的实现是依赖 cookie的

2.2 应用场景

  • 会话跟踪:例如商城的购物车。

2.3 jsp内置对象session和Servlet的HttpSession的关系

jsp内置对象session和Servlet的HttpSession获取的是同一个session对象。因为 session是保存到服务器的,因此无论是jsp还是Servlet获取的都是同一个对象。