qq空间登陆 cookie_Java Web(二)会话技术:Cookie、Session

一:基本解释

会话:指的是浏览器和服务器之间的多次请求和响应

也就是说你打开浏览器,并且访问某个页面开始,你的浏览器和服务器之间就建立了某种连接,这种连接就叫会话。当关闭浏览器时,连接断开,会话则挂断。

我们可以想象这样的场景:当你与一位好友进行电话通讯时,这就相当于建立了会话连接,而双方的通讯工具则可以想象为浏览器和服务器。

会话技术有两种:一种是通讯信息存于客户端(通常为浏览器)的Cookie技术,一种为通讯信息存于服务器的Session技术。这两种技术如何应用以及相应的优缺点,下面我们一一讲解。

二:Cookie技术

我们想象这样一个场景,当你拿着存折去银行存钱时,你的存折上会有你的账户信息以及本次存入的钱数等信息,这些信息就相当于一个或多个Cookie信息,这些信息呈现在你的存折上(相当于客户端),你可以通过这些信息来查阅你究竟存了多少钱(毕竟快过年了)。下面讲解具体技术应用

1:Cookie技术的使用

1>创建cookie对象,绑定数据

55b995237c489390879d2fb6dae46d8b.png

2>发送Cookie对象

865b4e86173d14c142819caf0b85d701.png

3>获取Cookie,获取数据

788dcb83ae490ba7a029edaca69aeea0.png

2:Cookie的保存问题

1>保存时间问题

在默认情况下,当浏览器关闭时候在会话期间产生的cookie信息就销毁

我们可以进行持久化存储:

SetMaxAge(int seconds)

当seconds为正数,cookie信息会自动存入硬盘文件中,并指明相应

cookie的存活时间,当时间到后,cookie信息自动失效。

当seconds为负数,cookie信息进行默认值操作。

当seconds为0,删除cookie信息。

2>编码问题

cookie信息在tomcat8之前不能存储中文信息,在tomcat8之后,支持大部分中文信息存储,但是特殊符号还不能覆盖全面,建议这种情况下,进行URL编码存储。

3:Cookie的作用和特点

1:cookie存储信息在客户端

2:cookie对一个客户端保存单个cookie大小为4kb(无扩展)

3:同一域名下总cookie数限制在20以内(无扩展)

作用:

1:cookie技术大部分用于数据不敏感部分。因其数据存储在客户端,数据不

安全。

2:当客户端发送请求到服务器,服务器可根据请求所携带的cookie信息进行

客户端识别。

三:Session技术

我们承接cookie技术的引入场景,存折存钱。当你存钱,银行服务器肯定会查询你的银行账户信息并进行相应存入操作,这时候你的最新的存款信息就会更新到银行服务器里边,这就相当于我们存储信息到服务器的Session技术

1:Session技术的应用

1>获取session对象

3681010ee2900c07c862f78c9e6aa79e.png

2>使用session对象

350733674c2a6672f27e9a0d4f32bf1f.png

此步完成后就相当于在服务器中存储session专用的空间存入数据及响应的 键值

3>获取session数据

15e66625d7759f3c6bd7a504b84f184a.png

2:session的保存问题

默认session保存时间为30分钟,当超过这个时间,session失效。

我们可以在web.xml中进行相应配置:

8052c6e41e35af991607ff74fef23cfc.png

其中根据自己的需求设定时间

也可在代码中设定session的有效时间:

cb5317ab36ffc44dfd311759b161c31e.png

3:session的客户端、服务器关闭异步问题

1>当关闭浏览器,服务器正常运行,默认情况下会话产生的session失 效,这时候我们可以根据session依据cookie实现这一原理进行持久化,新建一个cookie持久保存session的ID信息,当浏览器重启,发出请求,携带保存的cookie信息,浏览器进行识别并带回对应客户端之前会话产生的session信息。

2>当服务器关闭,客户端正常开启,tomcat自动完成下列功能:

session的钝化:在服务器关闭前,将相应session信息存入硬盘

session的活化:在服务器开启后,将所存储的session信息转入内存为

session对象。

4:session的优缺点:

优点:简化了数据的传递、适合信息敏感操作应用

缺点:占用服务器资源,当进行大数据量开发时,session过多会影响服务

器的性能。

通过本次学习,相信你已经掌握了cookie和session技术,但是我们还缺一些实战。加油,每天都在前进的路上才不会有遗憾!

如有技术内容需要探讨,请加我QQ;如果还没有学到撑,请关注我公众号,我是小渣渣,我在小札札空间等你!(第一篇被禁了哭唧唧)

8e866322401146aab271225e06e48d8a.png
QQ

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值