【是什么】
Cookie是小量信息,由网络服务器发送出来并存储在网络浏览器上,是个存储在浏览器目录的文本文件,与特定用户相关。
【作用】
1.可以根据cookie包含的信息判断并维护在http传输中的状态。
2.利用cookie跟踪统计用户访问该网站的一些细节,比如访问时间、访问页面、访问频率等等。
3.根据cookie,网站可以提供一些人性化的个性化服务,算是一种被迫性的用户体验调查。
4.目前应用最广泛的是用户登录信息的记录,这样下次访问时就不用重复输入了。
【生存周期】
有的cookie是属于窗口的,在当前窗口或者子窗口都可以读出来cookie。但是换一个浏览器窗口就读不出来了。有的是属于客户端的,只要是这个客户端,用哪个浏览器都可以读出cookie。这主要是用到了cookie的一个年龄属性。一旦设置了年龄,就会在客户端产生文件,以便读取。
【常用属性】
1.maxAge
返回cookie在客户端最大的有效时间,以秒为单位。
Cookie的maxAge默认值为-1,表明这是一个临时cookie,不会被保存到磁盘上,仅仅存在于当前浏览器所在的内存中,浏览器关闭cookie也就消失。
maxAge值为0,表示删除该cookie;maxAge值为正整数,表示该cookie在客户端的有效时间。
2.name
cookie的名字,创建后不能改变。
3.path
cookie对服务器上哪个url有效。cookie的path属性决定可以访问该cookie的Web资源的路径。path的默认值为request。
4.value
cookie的值,setValue方法来设置value值。
5.domain
cookie的域名。如果设置为“.baidu.com”,则所有以“baidu.com”结尾的域名都可以访问该cookie。
【cookie的使用】
1.设置cookie属性
Cookie是以键值对的形式保存数据,给cookie设置相应的值,首先创建cookie。代码如下:
Cookie cookie=newCookie("userName","zheng");
Response.addCookies(cookie);
2.获取cookie
Cookie[]cookies=request.getCookies();
For(inti=0;i<cookies.length;i++){
Cookiecook=Cookies[i];
System.out.println(cook);
}
3.cookie的修改
若要修改某个cookie,只需要新建一个同名的cookie,添加到response中覆盖原来的cookie即可。
4.cookie的删除
要删除cookie,只需要新建一个同名的cookie,并将maxAge设置为0即可。