JavaWeb之Session与Cookie

本文详细介绍了Cookie和Session在Web开发中的作用,用于维持用户会话。Cookie是客户端技术,保存在用户浏览器中,有数量和大小限制;而Session是服务器端技术,存储用户信息,确保用户在网站的登录状态。两者在登录、购物车等场景中有广泛应用。了解它们的工作原理和区别,对于优化用户体验和保障数据安全至关重要。

目录

Cookie,Session讲解
一,会话:用户打开了一个浏览器,点击了很多超链接,访问了多个web资源,关闭浏览器,这个过程称为会话。
一个网站如何证明你来过?
客户端 服务端
1,服务端给客户端一个信件,客户端下次访问带上信件,就可以了,cookie
2,服务器登记你来过,下次你来的时候我来匹配你,seesion

二,保存会话的两种方式
cookie:客户端技术(客户端通过响应拿到信件,通过请求带到服务器)
seesion:服务器技术,可以保存用户的会话信息,我们可以把数据放在seesion中
常见应用:网站登录之后,下次就不需要登录了,直接访问

新建一个web项目,导入包,pom文件直接删除留下头文件即可。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
第一次访问,没有内容,服务器给客户端一个cookie
在这里插入图片描述
第二次访问
在这里插入图片描述
在这里插入图片描述
这样的cookie关闭浏览器就会消失,所以可以设置一个时间限制,保证再打开浏览器也会存在
在这里插入图片描述
再次运行,查看
在这里插入图片描述

cookie

1.从请求中拿到cookie信息
2.服务器响应给客户端cookie
在这里插入图片描述

1,cookie[] cookies = req. getcookiesO; //获得Cookie
2,cookie. getName(); //获得cookie中的key
3,cookie. getvalue(); //获得cookie中的v1aue
4new Cookie("lastLoginTime", system. currentTimeMillis(+""); //新建一个cookie
5,cookie. setMaxAge (24*60*60); //设置cookie的有 效期
6,resp. addcookie(cookie); //响应给客户端- - 个cookie

cookie: - -般会保存在本地的用户目录下appdata;
-个网站cookie是否存在上限!聊聊细节问题
● 一个Cookie只能保存一 个信息;
● 一个web站点可以给浏览器发送多个cookie,最多存放20个cookie; .
● Cookie大小有限制4kb;
● 300个cookie浏览器上限
删除Cookie;
● 不设置有效期,关闭浏览器,自动失效;
● 设置有效期时间为0 ;
代码:
删除cookie
在这里插入图片描述
在这里插入图片描述
先运行两次c1,有了cookie后,再输入c2,会删除cookie

在这里插入图片描述

编码与解码
在这里插入图片描述

seesion(重点)

什么是Session:
●服务器会给每一个用户(浏览器)创建一个Seesion对象;
●一个Seesion独占-个浏览器, 只要浏览器没有关闭,这个Session就存在;
●用户登录之后,整个网站它都可以访问! -->保存用户的信息;保存购物车的信息…

Session和cookie的区别:
●Cookie是把用户的数据写给用户的浏览器,浏览器保存(可以保存多个)
●Session把用户的数据写到用户独占Session中,服务器端保存(保存重要的信息 ,减少服务器资源的浪费)
●Session对象由服务创建;
使用场景:
●保存一个登录用户的信息;
●购物车信息;
●在整个网站中经常会使用的数据,我们将它保存在Session中;
使用Session:
在这里插入图片描述

存入数据
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

得到数据
在这里插入图片描述

在这里插入图片描述
注销seesion
在这里插入图片描述
在这里插入图片描述
也可以在web.xml中设置,会话自动过期
在这里插入图片描述

在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值