文档介绍:
第6章使用cookie记录信息
1
6.1.1 什么是cookie
什么是Cookies(“小甜饼”)
Cookies就是服务器暂存放在你的电脑里的资料(.txt格式的文本文件),好让服务器用来辨认你的计算机。
当浏览网站的时候,Web服务器会先送一小小资料放在客户的计算机上,Cookies 会把客户在网站上所打的文字或是一些选择都记录下来。
当下次客户再访问同一个网站,Web服务器会先看看有没有它上次留下的Cookies资料,有的话,就会依据Cookie里的内容来判断使用者,送出特定的网页内容给客户。
Cookie是一段纯文本信息,由服务器随文本一起发送到客户端,并保存在客户端硬盘的指定目录。服务器读取时,只读取到这个服务器相关的信息。
2
对用户访问
在用户请求访问某个网站上的某个页面时,应用程序发送给该用户的不仅仅是一个页面,还有一个包含日期和时间的 Cookie。
用户的浏览器在获得页面的同时还得到了这个 Cookie,并且将它保存在用户硬盘上的某个文件夹中。
以后,如果该用户再次访问您站点上的页面时,浏览器就会在本地硬盘上查找与该 URL 相关联的 Cookie。如果该 Cookie 存在,浏览器就将它与页面请求一起发送到您的站点,您的应用程序就能确定该用户上一次访问站点的日期和时间。
3
6.1.2 Cookie的常见用途
Cookie最根本的用途:
Cookie能够帮助Web站点保存有关访问者的信息。
Cookie的常见用途:
网站浏览人数管理
按照用户的喜好定制网页外观
在电子商务站点中实现诸如“购物篮”等功能
4
5
6.2 在JSP中使用Cookie
Cookie实质
是服务器端与客户端之间传送的普通HTTP头,可以保存也可不保存在客户的硬盘上。
如果保存,每个文件大小不超过4KB的文本文件,多个Cookie可保存到同一个文件中。
如果从编程角度来看,在JSP中Cookie就是Java提供的一个类。
6
6.3.3 设置Cookie属性
类型
方法名
方法解释
String
ment()
返回cookie中注释,如果没有注释的话将返回空值.
String
getDomain()
返回cookie中Cookie适用的域名. 使用getDomain() 方法可以指示浏览器把Cookie返回给同一域内的其他服务器,而通常Cookie只返回给与发送它的服务器名字完全相同的服务器。注意域名必须以点开始(例如.)
int
getMaxAge()
返回Cookie过期之前的最大时间,以秒计算。
String
getName()
返回Cookie的名字。名字和值是我们始终关心的两个部分
String
getPath()
返回Cookie适用的路径。如果不指定路径,Cookie将返回给当前页面所在目录及其子目录下的所有页面。
boolean
getSecure()
如果浏览器通过安全协议发送cookies将返回true值,如果浏览器使用标准协议则返回false值。
String
getValue()
返回Cookie的值。
7
表6-1 Cookie中的方法及其说明
int
getVersion()
返回Cookie所遵从的协议版本。
void
ment(String purpose)
设置cookie中注释。
void
setDomain(String pattern)
设置cookie中Cookie适用的域名
void
setMaxAge(int expiry)
以秒计算,设置Cookie过期时间。
void
setPath(String uri)
指定Cookie适用的路径。
void
setSecure(boolean flag)
指出浏览器使用的安全协议,例如HTTPS或SSL。
void
setValue(String newValue)
cookie创建后设置一个新的值。
void
setVersion(int v)
设置Cookie所遵从的协议版本。
8
6.2.1创建Cookie
Cookie是由Javax.servlet.http.Cookie类所衍生出来的对象
建立Cookie的语法如下:
Cookie objCookie = new Cookie(index Value,string Value)
一个Cookie对象必须包含有一个特定的indexValue索引值与字符串类型的数据内容stringValue
Cookie数据还必须传送到客户端,用addCookie方法发送一个HTTP Header。
传送的方式为:response.addCookie(objCooki
内容来自淘豆网www.taodocs.com转载请标明出处.