首页 > 其他分享 >cookie的一些知识点总结

cookie的一些知识点总结

时间:2023-12-23 15:12:00浏览次数:40  
标签:总结 知识点 sessionID session cookie 服务器 servlet 客户端

一、cookie的种类

  • sessionID
    这个ID是会话性的,只要关闭了当前浏览器,这个ID会消失,需要调用getSessoin重新获取一个新的session
  • 会话性cookie
    这个cookie也是会话性的
  • 即使性cookie
    这个cookie只要离开的该请求或者是页面,就会消失
  • 持久性cookie
    这个cookie只要时间没有过期,就会存储在客户端,不会过期

二、getSession()原理

req.getSession()在会对请求来的cookie中的sessionID和服务器中的相关map进行查找,如果集合中没有该sessionID。
那么服务器会自动创建一个新的session和对应的ID并放到响应的cookie中。然后客户端接收到这个cookie后会保存到客户端中。
然后下一次请求再次带上这个cookie发送到servlet中。
req.getSession().getAttribute()这个获取属性和值也是在服务器的相关map集合查找

三、一个有趣的实验

因为sessionID在每一个不同类型的浏览器是不同的。在每一次会话是也是不同的.
当我在Chrome一次会话中登录了,比如8E77DD7F827749A52C92FF45D38C9DC6这个sessoinID在服务器被标记为已经登录
然后我复制该sessionID的值再去到Edge浏览器该网址的sessionID中,发现列表页面也能访问。我再尝试用chrome关闭
之前的会话,再次打开新的会话,也是和Edge浏览器的操作一样,列表页面也能访问。说明sessionID和对应的属性和值存储
在服务器的某个map集合当中。而且默认一个sessionID在servlet容器没有关闭的时候时间为30min。
但是只要关闭了servlet容器,那么所有的sessionID和对应的属性和值都会删除掉!

四、cookie和session的区别:

cookie里面其实也有会话级cookie属性,跟sessionID都是保存在客户端,一旦关闭了本次会话,浏览器并不能
再次找到这个属性。而session是保存在服务端,所以只要服务端没有关闭,那么有对应sessionID,还是能找到该sessionID
以前保存的内容。
cookie里面有即使性cookie属性,目前不知道业务场景
cookie里面还有持久性属性,持久性保存在客户端的内存中,关闭会话和servlet服务器也不会消失,唯一条件是超过时间
会自动消失,这个用来保存token非常好用。

五、扩展

session虽然说不能通过servlet实现服务端持久化,但是能通过tomcat持久化。不过和cookie的客户端持久化来讲,从性能、
速度以及对应的投资,cookie是一个很好的解决方案。
比如:
servlet session持久化

标签:总结,知识点,sessionID,session,cookie,服务器,servlet,客户端
From: https://www.cnblogs.com/new-one/p/17923141.html

相关文章

  • 2023-2024-1 20231303 《计算机基础与程序设计》赵泊瑄第十三周学习总结
    2023-2024-120231303《计算机基础与程序设计》赵泊瑄第十三周学习总结作业信息这个作业属于哪个课程2023-2024-1-计算机基础与程序设计这个作业要求在哪里作业要求的链接https://i.cnblogs.com/posts/edit)这个作业的目标总结第十三周学习收获作业正文2023-......
  • 2023-2024-1 20231419 《计算机基础与程序设计》第十三周学习总结
    2023-2024-120231419《计算机基础与程序设计》第十三周学习总结作业信息这个作业属于哪个课程https://edu.cnblogs.com/campus/besti/2023-2024-1-CFAP这个作业要求在哪里https://www.cnblogs.com/rocedu/p/9577842.html#WEEK13这个作业的目标自学《C语言程序设......
  • 2023-2024-1 20231403 《计算机基础与程序设计》第十三周学习总结
    作业信息这个作业属于哪个课程<班级的链接>(如2022-2023-1-计算机基础与程序设计)这个作业要求在哪里2023-2024-1计算机基础与程序设计第十三周作业)这个作业的目标自学教材《C语言程序设计》第12章并完成云班课测试作业正文https://www.cnblogs.com/lsrmy/p/179......
  • 2023-2024-1 20231417 《计算机基础与程序设计》第十三周学习总结
    2023-2024-120231417《计算机基础与程序设计》第十三周学习总结作业信息这个作业属于哪个课程2023-2024-1-计算机基础与程序设计这个作业要求在哪里2023-2024-1计算机基础与程序设计第十三周作业这个作业的目标自学教材《C语言程序设计》第12章并完成云班课测试......
  • 2023-2024-1 20231402《计算机基础与程序设计》第十三周学习总结
    2023-2024-120231402《计算机基础与程序设计》第十三周学习总结作业信息这个作业属于哪个课程2023-2024-1-计算机基础与程序设计这个作业要求在哪里2023-2024-1计算机基础与程序设计第十三周作业这个作业的目标自学《C语言程序设计》第12章作业正文https://w......
  • 2023-2024-1 20231424《计算机基础与程序设计》第13周学习总结
    2023-2024-120231424《计算机基础与程序设计》第13周学习总结作业信息作业属于的课程<班级链接>(2022-2023-1-计算机基础与程序设计)作业要求<作业要求>(2022-2023-1计算机基础与程序设计第一周作业)作业目标《C语言程序设计》第12章作业正文https://www.cnblo......
  • JAVA云his系统、门诊、住院业务使用流程知识总结
    云HIS系统是一款满足基层医院机构各类业务需要的健康云系统。系统能帮助基层医院机构完成日常各类业务,提供病患挂号支持、病患问诊、电子病历、开药/发药、会员管理、统计查询、医生站和护士站等一系列常规功能,还能与公卫、PACS等各类外部系统融合,实现多层机构(医院)之间的融合管理。......
  • 2023-2024-1 20231320 《计算机基础与程序设计》第十三周学习总结
    2023-2024-120231320《计算机基础与程序设计》第十三周学习总结作业信息这个作业属于哪个课程<班级的链接>(2023-2024-1计算机基础与程序设计)这个作业要求在哪里<作业要求的链接>(2022-2023-1计算机基础与程序设计第十三周作业)这个作业的目标<自学《C语言程序......
  • 常见视频文件格式总结
    常见的视频文件格式有很多,它们使用不同的编解码器(Codec)和容器格式(Container)来存储视频和音频数据。以下是一些常见的视频文件格式:AVI(AudioVideoInterleave):编码器:可以使用各种编码器,如DivX、Xvid、MJPEG等。容器:AVI是一种容器格式,可以包含不同编码器生成的视频和音频流。......
  • springboot1.x升级到springboot3.x中遇到的问题总结
    springboot1.x升级到springboot3.x中遇到的问题总结springboot1.x升级到springboot3.x中遇到的问题总结前言问题:无法创建DataSource的bean对象,提示url或driverclass未配置问题:引入freemark后页面总是报404问题:bootstrap.yml不生效,配置中的内容无法读取springboot1.x升级到spring......