cookie和session和JSESSIONID

cookie和session的区别:

  1. cookie存放在客户端,session存放在服务器端
  2. cookie不安全因为可以通过分析存放在本地的cookie
  3. session一定时间内保存在服务器上,当访问变多,占用服务器的资源性能,为了减轻资源性能最好使用cookie
  4. 单个cookie保存数据是有限的一半不超过4k,很多浏览器都限制一个站点最多保存20个cookie,而session保存在服务器端没有数量的限制,也可以保存更复杂的类型
  5. cookie的生命周期是积累的,而session的生命周期是间隔的
  6. 由于HTTP协议是无状态的协议,所以服务端需要记录用户的状态时,就需要Session来识别具体的用户。

session和JSESSIONID

由于HTTP协议是无状态的协议。一旦数据交换完毕,客户端与服务器端的连接就会关闭,再次交换数据需要建立新的连接。这就意味着服务器无法从连接上跟踪会话,因此就用到JSESSIONID来跟踪会话

  1. 假设服务器中没有会话了,这时打开浏览器第一次访问这个服务器,服务器Tomcat就会创建一个session并且将这个session的id响应给浏览器名字为JSESSIONID,第一次访问,请求头中的cookie并没有JSESSIONID的信息,只有服务器响应给浏览器的JSESSIONID
    在这里插入图片描述
  2. 当我们第一次请求完毕,由于HTTP协议是无状态的协议,一旦数据交换完毕,客户端与服务器端的连接就会关闭,再次交换数据需要建立新的连接,这时浏览器请求服务器就要通过浏览器存储的JSESSIONID来追踪之前的session会话,通过JSESSIONID和服务器中的session的id进行匹配,就可以找到,然后再次建立连接,当服务器响应完毕就断开连接,浏览器请求就再次建立连接。如果浏览器没有关闭或者服务器中的会话没有结束,那么浏览器总是用同一个JSESSIONID访问这个服务器,如果关闭浏览器再打开浏览器那么服务器就要重新产生一个session并且将新的JSESSIONID通过cookie得方式再次给浏览器

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值