会话管理(Cookies&Session)

本文详细介绍了HTTP会话管理的概念,重点讲解了Cookies和Session的使用。从设置、读取和删除Cookies,到Session的工作原理、生命周期及管理方法,分析了两者之间的区别。强调了Cookies的数据存储在客户端,而Session数据存储在服务器端,适用于不同场景的需求。
摘要由CSDN通过智能技术生成

1.会话管理概念

        HTTP是一种无状态协议,每次客户端访问web页面时,客户端打开一个单独的浏览器窗口连接到web服务器,由于服务器不会自动保存之前客户端请求的相关信息,所有无法识别一个HTTP请求是否为第一次访问。这就引进了web客户端和服务器端之间的会话,这就是会话管理。

2.Cookies

Cookies是存储在客户端计算机上的文本文件,其中保留了各种跟踪信息。

 

在Servlet中操作Cookie:

1.通过Servlet设置Cookie

//创建一个Cookies对象
Cookie cookie = new Cookes("key","value");
//设置最大生存周期
cookie.setMaxAge(60*60*24);
//发送Cookie到HTTP响应头
response.addCookie(cookie);

2.通过Servlet读取Cookie

①通过HTTPServletRequest的getCookies()方法创建一个javax.servlet.http.Cookie对象的数组

②循环遍历数组

③使用getName()和getValue()方法来访问每一个cookie和关联的值

3.通过servlet删除Cookie

//把cookie最大生命周期设置为0
cookie.setMaxAge(0);
//添加到响应头
response.addCookies(cookie);

3.Cookie的局限性

①cookie可能被浏览器禁用

②cookie保存在客户端,可能被删除

③大小受限制

④安全性不高存储形式是存文本类型,信息不安全

4.Session

4.1Session简介 

  1. Session是指使用HttpSession对象实现会话跟踪的技术,是一种在服务器端保持会话跟踪的解决方案。
  2. Session的工作原理:服务器在创建会话对象时,会为其分配一个唯一的会话标识——SessionId,以“JSESSIONID”的属性名保存在客户端Cookie中,在用户随后的请求中,服务器通过读取Cookie中的JSESSIONID属性值来识别不同的用户,从而实现对每个用户的会话跟踪。

2.Cookie和Session主要的区别:

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值