JSP状态管理(Cookie与Session)

1、HTTP协议的无状态性

无状态是指,当浏览器发送请求给服务器的时候,服务器响应客户端请求。但是当同一个浏览器再次发送请求给服务器的时候,服务器并不知道它就是刚才那个浏览器。简单的说,就是服务器不会去记得你(无法保存状态),所以就是无状态协议。

2、保存用户状态的两大机制
  • Session
  • Cookie
3、Cookie简介

Cookie:中文名称为“小甜饼”,是web服务器保存在客户端的一系列文本信息。

典型应用一:判定注册用户是否已经登录网站。
典型医用二:“购物车”的处理。
典型医用三:系统会自动记录已经浏览过的视频。
典型医用四:记住用户名和密码实现自动登录功能。

Cookie的作用

  1. 对待定对象的追踪
  2. 保存用户网页浏览记录与习惯
  3. 简化登录

Cookie安全风险

容易泄露用户信息

4、Cookie的创建与使用

创建Cookie对象

Cookie newCookie = new Cookie(String key, Object value);

写入Cookie对象

response.addCookie(newCookie);

读取Cookie对象

Cookie[] cookies = request.getCookies();

常用方法:

void setMaxAge(int expiry);    //设置cookie的有效期,以秒为单位

void setValue(String value);    //在cookie创建后,对cookie进行赋值

String getName();    //获取cookie的名称

String getValue();    //获取cookie的值

int getMaxAge();    //获取cookie的有效期,以秒为单位
5、Session与Cookie的对比

Session

  1. 在服务器端保存用户信息
  2. session中保存的是Object类型
  3. 随会话的结束而将其存储的数据销毁
  4. 保存重要的信息

Cookie

  1. 在客户端保存用户信息
  2. cookie中保存的是String类型
  3. cookie可以长期保存在客户端
    4.保存不重要的信息
6、cookie实现登录记住密码的功能

你可能感兴趣的:(JSP状态管理(Cookie与Session))