查看完整版本: [-- Jsp COOKIE 对象 --]

风信Java论坛 ›› J2EE/Java Web 讨论交流中心 ›› Jsp COOKIE 对象 登录 -> 注册

1F Jsp COOKIE 对象   jastby Post by : 2008-05-30 17:20:21.0

HTTP COOKIE实质是服务端与在客户端之间传送的普通HTTP头,可保存也可不保存在客户的硬盘上.如果保存,每一个文件大小不超过4K的文本文件.多个COOKIE可保存到同一个文件中. 如果从编程角度来看,在JSP中COOKIE就是JAVA提供的一个类.常用的方法如下所表示,因为客户端可能不接受COOKIE,所以建议不用它,改用SESSION等其他方式。

public class cookie
{
public String getDomain() //返回该COOKIE的有效域
public int getMaxAge() //返回该COOKIE的有效期,单位为秒
public String getName() //返回该COOKIE的名称
public String getPath() //返回该COOKIE的有效路径
public boolean getSecure() //返回该COOKIE的安全设置
public String getValue() //返回该COOKIE的值
public void setDomain(java.lang.String pattern) //设置该COOKIE的有效域
public void setMaxAge(int expiry) //设置该COOKIE的有效期,单位为秒
public void setPath(java.lang.String uri) //设置该COOKIE的有效路径
public void setSecure(boolean flag) //设置该COOKIE的安全设置
public void setValue(java.lang.String newValue) //设置该COOKIE的值
}

一个COOKIE包含以下五部分:

  1. NAME/VALUE对,设置该COOKIE的名字及它保存的值
  2. COOKIE通常和服务器相关,如果将域设为JAVA.SUN.COM,那么该COOKIE就和这个域相关,只对该网址起作用,当浏览该网址时,浏览器将把该COOKIE的内容发送给服务端,COOKIE是作为HTTP HEADER的一部分被发送的,如果没有设置域,那么COOKIE就只和创建该COOKIE的服务器相关.
  3. 路径用于指定服务器上可以使用该COOKIE的文件所在的路径,它只对该网址下的该路径下的应用起作用."/"表示服务器上所有目录都可以使用该COOKIE.
  4. COOKIE都有一个有效期,有效期默认值为-1,这表示没有保存该COOKIE,当该浏览器退出时,该COOKIE立即失效.
  5. 安全选项true/false,如果设置为true,那么在服务端与在客户端之间传送该COOKIE的内容时,采用HTTPS协议.


如何检查一个客户端是否支持COOKIE的方法:
用下面的方法写一个COOKIE到客户端,并确认成功

java代码
  1. try 
  2. Cookie c = new Cookie("mycookie","COOKIE TEST"); 
  3. response.addCookie(c); 
  4. catch(Exception e) 
  5.       System.out.println(e); 
  6. }  


然后在一个新的JSP文件中:用下面的方法取客户端的COOKIE到cookies中, 如果cookies.length ==0,说明该客户端的浏览器不支持COOKIE

java代码
  1. try 
  2. Cookie[] cookies = request.getCookies(); 
  3. if(cookies.length ==0
  4.       System.out.println("not support cookie"); 
  5. catch(Exception e) 
  6.       System.out.println(e); 

风信Java论坛 ›› J2EE/Java Web 讨论交流中心 ›› Jsp COOKIE 对象 登录 -> 注册

查看完整版本: [-- Jsp COOKIE 对象 --]
CopyRight © 2008-2009 JavaWind.Net Studio All Rights Reserved
Powered By JWind.BBS Vesion 1.0.0 Beta1 Processed in 7 ms,0 (Queries)  Gzip enabled
粤ICP备07511478号