Cookie和Session

本文详细介绍了Cookie的工作原理,包括创建、获取、修改、生命周期控制和有效路径设置。同时对比了Session的概念、创建、数据操作和生命周期管理,揭示两者底层的关联。

Cookie

1. 什么是Cookie

    ~~~~     Cookie是服务器通知客户端保存键值对的一种技术
    ~~~~     客户端有了Cookie后,每次请求都发送给服务器
    ~~~~     每个Cookie的大小不能超过4Kb

2. Cookie的创建

在这里插入图片描述

3. Cookie的获取

在这里插入图片描述

4. Cookie值的修改

方案一:

    ~~~~     1. 先创建一个要修改的同名的Cookie对象;
    ~~~~     2. 在构造器中同时赋予新的Cookie值;
    ~~~~     3. 调用response.addCookie(cookie);

方案二:

    ~~~~     1. 先查找到需要修改的Cookie对象;
    ~~~~     2. 调用setValue()方法赋予新的Cookie值;
    ~~~~     3. 调用response.addCookie(cookie)通知客户端保存修改;

5. Cookie生命周期控制

Cookie的生命周期控制指的是如何管理Cookie什么时候被销毁
setMaxAge()方法:设置Cookie的最大生存时间,以秒为单位——正值表示cookie将在经过该值表示的秒数之后过期;注意,该值是cookie过期的最大生存时间,不是cookie的当前生存时间;负值意味着cookie不会被持久存储,将在Web浏览器退出时删除;0值会导致删除cookie。

6. Cookie有效路径Path的设置

Cookie的Path属性可以有效的过滤哪些Cookie可以发送给服务器,哪些不发
Path属性是通过请求的地址来进行有效的过滤
在这里插入图片描述
        ~~~~~~~~        

Session会话

1. 什么是Session会话

    ~~~~     Session是一个接口HttpSession;
    ~~~~     Session就是会话,它是用来维护一个客户端和服务器之间关联的一种技术;
    ~~~~     每个客户端都有自己的一个Session会话;
    ~~~~     Session会话中,我们经常用来保存用户登录之后的信息;

2. Session的创建和获取

    ~~~~     1. 创建和获取Session的API相同,都是request.getSession()
            ~~~~~~~~~~~~             第一次调用是:创建Session会话;
            ~~~~~~~~~~~~             之后调用都是:获取前面创建好的Session会话对象;
    ~~~~     2. isNew()方法:判断是否是刚创建的Session
    ~~~~     3. getId()方法:得到Session会话的ID值(每个会话都有一个唯一的ID值)

3. Session域数据的存取

存:
在这里插入图片描述
取:
在这里插入图片描述

4. Session生命周期控制

  1. setMaxInactiveInterval(int interval):指定在servlet容器使此会话失效之前客户端请求之间的时间间隔,以秒为单位;负数时间指示会话永远不会超时
  2. getMaxInactiveInterval():获取Session的超时时间
  3. session的超时是指客户端两次请求的最大间隔时长
    在这里插入图片描述
  4. invalidate()方法:使此会话立即无效,然后取消对任何绑定到它的对象的绑定

5. 浏览器和Session之间关联的技术内幕

在这里插入图片描述

6. Session技术,底层其实是基于Cookie技术来实现的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

PandaThug

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值