getValue()/setValue():获取/设置 Cookie 的值。如前所述,名称和值实际上是程序员始终关心
的两个方面。不过也有一些例外情况,比如把名称作为逻辑标记(也就是说,如果该名称
存在,则表示 true)。
getVersion()/setVersion():获取/设置 Cookie 所遵从的协议版本。默认版本 0(遵从原先
的 Netscape 规范);版本 1 遵从 RFC 2109,但尚未得到广泛的支持。
3.将 Cookie 加入 HTTP 头中
可将 addCookie()方法加入到 Set-Cookie 应答头。如下所示:
Cookie usernameCookie = new Cookie("username", "dzycsai");
response.addCookie(userCookie);
4.读取 Cookie
从客户端读取 Cookie 时调用的是 request 对象的 getCookies()方法。该方法返回一个与
HTTP 请求头中的内容对应的 Cookie 对象数组。得到这个数组之后,一般是用循环语句访
问其中的各个元素,并调用 getName()检查各个 Cookie 的名字,直至找到目标 Cookie 为
止;然后对这个目标 Cookie 调用 getValue(),根据获得的结果进行其他处理。
5.Cookie 工具函数
用 request 对 象的 getCookies()方法 得到 一个 Cookie 对象 的数 组, 要找 到指 定的
Cookie 对象比较麻烦,这时可以编写一个得到指定名称的 Cookie 对象值的方法,这里,
提供一个这样的函数。
String getCookieValue(Cookie[] cookieArray,
String cookieName,String defaultValue) {
for(int i=0; i
Cookie cookie = cookies[i];
if (cookieName.equals(cookie.getName()))
return(cookie.getValue());
}
return(defaultValue);
}
在此方法中,第一个参数是一个 Cookies 数组,可以用 request.getCookies()方法得到;
第二个参数 cookieName,查找的 Cookie 对象的名称;第三个参数 defaultValue 是在没有找
到指定的 Cookie 对象时返回的值。