Cookie

来源:互联网 发布:mac怎么看u盘隐藏文件 编辑:程序博客网 时间:2024/06/05 23:53

Cookie:将会话相关的数据保存到浏览器中,并且在每次访问服务器时都带过去。



 1.javax.servlet.http.Cookie,可以直接利用此类的构造方法创建一个Cookie,创建出来的Cookie需要设置一个名称和值


 2.response身上具有addCookie的方法,可以将创建出来的组织成响应消息中的set-cookie头,通知浏览器保存该cookie


 3.request身上具有getCookies方法,可以获取浏览器带过来的所有Cookie


 4.Cookie方法:注意,浏览器是根据cookie的名称加上cookie的path来区分是否是同一个cookie的,如果需要覆盖之前的cookie,除了保证名称相同外还要保证path也相同。
   public Cookie(String name,String value)利用构造方法创建一个Cookie对象,在创建的时候就要指定该Cookie的名和值
   setValue与getValue方法  设置或者获取Cookie的值
   setMaxAge与getMaxAge方法  如果不设置cookie的MaxAge(或将其值设置为负值),则默认情况下浏览器会将cookie保存在浏览器的内存中,会随着浏览器关闭而消失。如果设置为一个正值,则代表该Cookie要保存的以秒为单位的时间值,如此,该cookie将会被浏览器保存到硬盘中去。如果将MaxAge设置为0,则是通知浏览器去删除该Cookie。
   setPath与getPath方法   用来指定访问哪个ULR及其子URL时带上此cookie,如果不设置此值,则浏览器默认会将发送该cookie的servlet所在的路径作为path使用。
    例如:
      setPath("/Day06")则/Day06/.../...的路径都会带上该Cookie
      如果发送该Cookie的Servlet是 /Day06/servlet/Demo1Servlet,并且未设置setPat,则浏览器在访问/Day06/servlet/..时会带上该cookie
   setDomain与getDomain方法  设置cookie对应的域名,此方法一旦调用,则浏览器会认为该cookie是一个第三方cookie而拒收
   getName方法 获取该cookie的名字,注意没有setName方法,一个Cookie一旦创建出来就不能修改名字了
   
 5.浏览器一般只允许存放300个Cookie,每个站点最多存放20个Cookie,每个Cookie的大小限制为4KB。