cookie与session

本文探讨了Web会话的基本概念,包括会话的定义和目的,重点讲解了Cookie和Server-SideSession的使用方法、特点以及它们之间的区别,强调了Cookie的数据存储位置和安全特性,以及Session在服务器端的优势。
摘要由CSDN通过智能技术生成

首先引入会话的概念

会话:一个浏览器客户端和web服务器连续发生的一系列请求和响应的过程。一次会话中包含多次请求和响应。

简单来说:用户开一个浏览器,访问网站资源,查看信息,最后关闭浏览器。这个过程称为一次会话。

会话的目的:在一次会话的范围内的多次请求间共享数据

会话分为:

  1. 客户端会话:cookie
  2. 服务端会话:session

cookie

使用方法

1.新建一个cookie对象(新建时两个参数一个是键,一个是值)

Cookie cookie = new Cookie(name, value);

2.把cookie对象放到response中(可以一次发送多个cookie对象,多次调用此方法即可)

response.addCookie(cookie);

3.接收值(这个方法会获取cookie里的所有值)

Cookie[] cookies = request.getCookies();

4.使用

cookies[0].getValue()

Cookie在浏览器的保存时长

默认情况下,当浏览器关闭后Cookie数据被销毁

可以方法设置Cookie,使其持久化存储

setMaxAge(int seconds)

其中参数意义

  1. 正数:将Cookie数据写到硬盘文件中,数值大小表示了Cookie存活时间(单位秒)
  2. 负数:默认值
  3. 零:删除Cookie数据

Cookie的特点

浏览器对于单个Cookie大小有限制,且对于同一域名下的总Cookie数量也有限制(20个)

他的特点决定了Cookie一半用于存储少量不太敏感的数据

Session

使用方法

1.获取Session对象

HttpSession session = request.getSession();

2.使用Session对象

//获取session值
session.getAttribute(String name);
//设置session值
session.setAttribute(String name, Object value);
//移除session值
session.removeAttribute(String name);

Session特点

  1. Session用于存储一次会话的多次请求的数据,存储在服务器端
  2. Session可以存储任意类型,任意大小的数据

Session与Cookie的区别

  1. Session存储数据在服务器端,Cookie在客户端
  2. Session没有数据大小限制,Cookie有
  3. Session数据安全,Cookie相对不安全
  4. Session对象由服务器创建

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值