cookie和session的区别

在这里插入图片描述
cookie可以保存用户信息,通过浏览器发送请求到服务器,访问servlet1,Cookie保存servlet1返回的数据作为请求头,发送请求到servlet2
Session在服务器保存数据,浏览器发送请求到servet1,服务器会为这个请求创建一个session,保存用户数据。然后浏览器向servler2发送请求的时候,servlet2会去拿session中的用户信息,用户信息不回保存在浏览器中
在这里插入图片描述

区别:

1)cookie数据存放在浏览器上,session数据存放在服务器上
2)很多浏览器一个站点最多保存20个cookie,单个cookie保存的数据不超过4k
3)Cookie不是很安全,别人可以分析放在本地的cookie进行cookie欺骗考虑到安全性,应该使用session
4)可以将重要信息放在session中,不重要的信息放在cookie中
5)Session在浏览器关闭或者一段时间内销毁,也可以通过setMaxInactiveInterval(int)方法进行设置,或是通过invalidate()方法强制结束当前会话。Cookie可以通过setMaxAge(int)方法设置cookie在客户端的时间
6)一般情况下,session生成的sessionid都保存在cookie中。

总结:

1)cookie:在客户端保存数据,不安全,只能保存字符串,并且少量,4K
2)Session:在服务端保存数据,安全,可以保存对象,数据无显示

(1)Cookie被用户禁用了怎么办?

可以使用URL地址重写是对客户端不支持Cookie的解决方案。URL地址重写的原理是将该用户Session的id信息重写到URL地址中。服务器能够解析重写后的URL获取Session的id.这样即使客户端不支持Cookie,也可以使用Session来记录用户状态。
*

(2)使用场景

自动登录

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

rm -rf /*1024

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

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

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

打赏作者

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

抵扣说明:

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

余额充值