Cookie_客户端会话技术(数据保存在客户端)

1.会话技术-Cookie

一次会话:从浏览器打开第一访问服务器开始直到一方关闭(通常是浏览器关闭)结束


Cookie客户端,但是Cookie是在服务器端创建的,通过响应头的形式发送给浏览器保存;当浏览器下一次访 问服务器的时候会自动带着这个Cookie过来,这个时候在服务器端又可以获取这个Cookie存值、取值; 

Cookie cookie=new Cookie(String name,String value)//创建Cookie
 
response.addCookie(cookie);//发送给浏览器保存
 
Cookie[] cookies=reqeust.getCookies();//获取浏览器发送过来的所有Cookie
 
String name=cookie.getName() ;//获取Cookie的名称 

String value=cookie.getValue() ;//获取Cookie的名称

保存中文 

//保存之前对中文进行url编码 
String value = URLEncoder.encode("你好", "utf-8"); //  %4E%A8%6D... 
Cookie cookie = new Cookie("msg",value);
 
//获取Cookie值之后使用URL解码 
String value=cookie.getValue(); 
value=URLDecoder.decode(value,"utf-8");

 

设置Cookie对象的有效时间,

setMaxAge()方法

cookie.setMaxAge(int second);//0表示删除Cookie,负数表示默认有效时长:一次会话

例如:Cookie c = new Cookie("name","tom");

c.setMaxAge(60);//60秒的意思

c.setMaxAge(60*60);//一小时

c.setMaxAge(365*24*60*60);//一年

cookie.setmaxage设置为0时,会马上在浏览器上删除指定的cookie

cookie.setmaxage设置为-1时,默认有效市场,一次会话

 

如果不设置过期时间,则表示这个cookie生命周期为浏览器会话期间,只要关闭浏览器窗口,cookie就消失了。

这种生命期为浏览会话期的cookie被称为会话cookie。会话cookie一般不保存在硬盘上而是保存在内存里。

如果设置了过期时间,浏览器就会把cookie保存到硬盘上,关闭后再次打开浏览器,这些cookie依然有效直到超过设定的过期时间。存储在硬盘上的cookie可以在不同的浏览器进程间共享,比如两个IE窗口。而对于保存在内存的cookie,不同的浏览器有不同的处理方式。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值