servlet中cookie的使用

---恢复内容开始---

  

Cookie是存储在客户端计算机上的文本文件,并保留了它们的各种信息跟踪的目的。 Java Servlet透明支持HTTP Cookie。

涉及标识返回用户有三个步骤:

  • 服务器脚本发送到浏览器的一组cookie。对于如: 姓名,年龄,或识别号码等。

  • 浏览器将这些信息存储在本地计算机上,以备将来使用。

  • 下一次浏览器发送任何请求,Web服务器,然后这些cookie发送信息到服务器,服务器将使用这些信息来识别用户。

 

以下是有用的方法列表时,可以使用servlet操纵cookies。

 

S.N.Method & Description
1 public void setDomain(String pattern)
这个方法设置域的cookie适用,例如www.yiibai.com
2 public String getDomain()
此方法获取域的cookie应用,例如yiibai.com
3 public void setMaxAge(int expiry)
此方法设置cookie过期之前多少时间(以秒为单位)间隔。如果不这样设置,cookie将持续只对当前会话。
4 public int getMaxAge()
此方法返回的最大年龄(周期)cookie,以秒为单位指定,默认情况下,-1表示cookie将继续下去,直到浏览器关闭。
5 public String getName()
此方法返回的cookie的名称。创建后的名称不能改变。
6 public void setValue(String newValue)
此方法设置的cookie值。
7 public String getValue()
这种方法得到的cookie关联的值。
8 public void setPath(String uri)
这个方法设定这个cookie的路径。如果你不指定路径,Cookie是相同的目录以及当前页面的所有子目录中的所有URL返回。
9 public String getPath()
这种方法得到这个cookie的路径。
10 public void setSecure(boolean flag)
这个方法设置布尔值,表示cookie是否应该只发送的加密(如SSL)连接。
11 public void setComment(String purpose)
本方法规定了注释,说明一个cookie的目的。注释是非常有用的,如果在浏览器的cookie展现给用户。
12 public String getComment()
此方法返回的注释,描述这个cookie用途或者为null,如果cookie没有注释。

 

  在servlet中使用很简单,就像这样。

       

                Cookie rmkeyCookie = new      Cookie("RMKEY",useResVo.getRmkey());

                rmkeyCookie.setMaxAge(3600);
                rmkeyCookie.setDomain(".why.com");
                rmkeyCookie.setPath("/");
                response.addCookie(rmkeyCookie);

如有多个cookie,可以new多个cookie对象,在客户端浏览器还是只有一个txt文件,只是有多个键值对。

 

或者这样;

   

response.addHeader(“set-cookie”,
StringUtil.appendString(cookieName, "=", cookieValue,
";Path=/;Domain=", domain, ";Max-Age=", maxAge, httpOnly));

 

posted @ 2016-06-29 10:05  yy23  阅读(732)  评论(0编辑  收藏  举报