【14】Cookie

一、会话

  • 默认情况下,用户打开一个浏览器访问web资源到关闭一个浏览器称之为会话。

  • 会话技术要解决的问题是:浏览器和服务器会话过程中,服务器对用户数据的保存问题。

二、概述

一种客户端技术,服务器把每个用户的数据以Cookie小文件的形式发送给用户各自的浏览器。当用户使用浏览器再去访问服务器的web资源时,再带着各自的Cookie过去。实现服务器对用户数据的客户端保存。应用场景:自动登陆,记录用户上次浏览时间和浏览的商品

1.创建Cookie

Cookie cookie = new Cookie("user","Lshare");

2.设置Cookie

  • setMaxAge(seconds)

必须设置最大的有效时间,因为默认Cookie是会话级别的,值为0,保存在内存中

  • setPath(uri)

设置有效路径,浏览器据此决定是否发送Cookie,默认当前工程

cookie.setMaxAge(24*60*60);//保存一天
cookie.setPath(this.getServletPath());

3.添加Cookie

添加Cookie到Response对象中,浏览器一般只允许存放300个Cookie,每个站点最多存放20个Cookie,每个Cookie限制大小为4KB。

response.addCookie(cookie);

4.获取Cookie

Cookie cookie = request.getCookies();//取得所有相关的Cookie
cookie.getName();//取得Cookie名
cookie.getMaxAge();//取得Cookie有效时间
cookie.getPath();//取得Cookie有效路径
cookie.getValue();//取得Cookie值

5.删除Cookie

生成一个有效时间为0的同名的有效路径一致的Cookie

Cookie[] cookies = request.getCookies();
for(Cookie cookie:cookies){
    if("user".cookie.getName()){
        cookie.setMaxAge(0);//删除名为user的Cookie
        response.add(cookie);
    }
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值