cookie编程

来源:互联网 发布:想在淘宝网上卖东西 编辑:程序博客网 时间:2024/05/18 01:13

用户登陆一次,再次登陆的时候就不用输入用户名了。
cookie的作用
对应的是一个小文本,是服务器写给客户端的小文本。记录信息的
使用cookie实现想简化登陆,人性化设计。
保存的位置有两种
1.cookie可能保存在客户端浏览器的所占内存中,关闭浏览器后,cookie就不再存在。
2.cookie也可能保存在客户pc机的硬盘上,设置有效时间,超过有效时间消失。

使用cookie的原则
不用cookie 保存对保密性要求高的信息,例如银行卡密码等
不用cookie实现必要的功能,防止cookie被删除后出现错误
可以说,cookie是实现锦上添花的作用,也就是说cookie一旦被禁止或者被删除,应用已依然能够正常运行。

Cookie类

抽象成一个类。
在servlet API中,存在类cookie,可以使用new关键字创建cookie对象
创建一个 cookie,cookie 是 servlet 发送到 Web 浏览器的少量信息,这些信息由浏览器保存,然后发送回服务器。cookie 的值可以唯一地标识客户端,因此 cookie 常用于会话管理。

例如:Cookie newCookie=new Cookie(“username”,“zhulei”);
可见,Cookie对象是保存一对键值对,都是字符串形式。
Cookie类中定义了一系列的方法
这里写图片描述

这里写图片描述
1.void setPath:设置cookie的有效访问路径。有效路径指的是cookie的有效路径保存在哪里,那么浏览器在有效路径下访问服务器就会带着cookie信息,否则不带cookie信息。
设置cookie的有效路径
默认的情况:有效路径在当前web应用下。
cookie.setPath(“/xxx”)
要放在发送之前
setMaxAge() 设置cookie的有效时间
正整数:表示cookie数据保存浏览器的缓冲目录(硬盘中),数值表示保存的时间
负整数:表示cookie数据保存到浏览器的内存中。浏览器关闭cookie就丢失了!!
零:表示删除同名的cookie数据
Cookie数据类型只能保存非中文字符串类型的,可以保存多个cookie
浏览器只允许存放300个Cookie,每个站点最多存放20个cookie,每个Cookie大小只能限制为4kb

项目中实现的步骤
1.先在servlet中创建cookie对象
这里写图片描述

2.通过jsp脚本从servlet获取cookie,通过数组遍历获取的对象,然后通过字符串查询的方式再请求分发到servlet中
这里写图片描述

Cookie的原理
1.服务器创建cookie对象,把会话数据存储到cookie对象当中
new Cookie(“name”,”value”);
2.服务器发送cookie信息到浏览器
response.addCookie(cookie);
set-cookie: name=eric (隐藏发送了一个set-cookie名称的响应头)
3.浏览器得到服务器发送的cookie,然后保存在浏览器端
4.浏览器在下次访问的时候,会带着cookie信息
cookie: name=eric (隐藏带着一个叫cookie名称的请求头)
5.服务器接收到浏览器带来的cookie信息
request.getCookies();

原创粉丝点击