`
othella
  • 浏览: 83796 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
社区版块
存档分类
最新评论

JAVA操作Cookie

阅读更多
1.设置Cookie

Cookie cookie = new Cookie("key", "value");
cookie.setMaxAge(60); //设置60秒生存期,如果设置为负值的话,则为浏览器进程Cookie(内存中保存),关闭浏览器就失效。
cookie.setPath("/test/test2"); //设置Cookie路径,不设置的话为当前路径(对于Servlet来说为request.getContextPath() + web.xml里配置的该Servlet的url-pattern路径部分)
response.addCookie(cookie);

2.读取Cookie

该方法可以读取当前路径以及“直接父路径”的所有Cookie对象,如果没有任何Cookie的话,则返回null
Cookie[] cookies = request.getCookies();

3.删除Cookie

Cookie cookie = new Cookie("key", null);
cookie.setMaxAge(0); //设置为0为立即删除该Cookie
cookie.setPath("/test/test2"); //删除指定路径上的Cookie,不设置该路径,默认为删除当前路径Cookie
response.addCookie(cookie);

4.修改Cookie
首先读取cookie
Cookie[] cks = request.getCookies();
for (int i = 0; i < cks.length; i ++){
  Cookie cookie = cks[i];
  if (cookie.getName().equalsIgnoreCase("cookiename")){
cookie.setValue("newvalue"); 设置新的值
        response.addCookie(cookie);
   }
}

5.注意:假设路径结构如下

/

/test

/test/test2

/test345

/test555/test666

a.相同键名的Cookie(值可以相同或不同)可以存在于不同的路径下。

b. 删除时,如果当前路径下没有键为"key"的Cookie,则查询全部父路径,检索到就执行删除操作(每次只能删除一个与自己最近的父路径Cookie)

FF.必须指定与设定cookie时使用的相同路径来删除改cookie,而且cookie的键名不论大写、小写或大小混合都要指定路径。

IE.键名小写时,如果当前路径为/test/test2,如果找不到再向上查询/test、/test555、/test345,如果还找不到就查询/ 。(/test555/test666不查询)

键名大小写混合或大写时,不指定路径则默认删除当前路径,并且不向上查询。

c.读取Cookie时只能读取直接父路径的Cookie。

如果当前路径为/test/test2,要读取的键为"key"。当前路径读取后,还要读取/test,/test读取后,还要读取/

d.在做Java的web项目时,由于一般的Web服务器(如Tomcat或Jetty)都用Context来管理不同的Web Application,这样对于每个Context有不同的Path,

在一个Server中有多个Web Application时要特别小心,不要设置Path为/的Cookie,容易误操作。(当然前提是域名相同)
分享到:
评论
2 楼 gujunfu_012 2009-01-06  
写的很全哦
1 楼 wshxchm 2008-12-15  
菜鸟学习了。

相关推荐

    java 操作cookie

    Java 操作 Cookie Java 操作 Cookie 是一种常用的 Web 开发技术,用于在服务器端和客户端之间交换数据。Cookie 是一种小文本文件,存储在客户端浏览器中,用于记录用户的行为和偏好。下面我们将详细介绍 Java 操作 ...

    关于java应用cookie

    `setMaxAge`方法用于设置Cookie的有效期,单位为秒。有效期为0表示Cookie仅在当前会话期间有效,浏览器关闭后就会删除;若为负数则表示Cookie将一直保存在客户端,直到被手动删除或过期。 ##### 2. 添加Cookie到...

    java操作cookie

    // 设置Cookie的有效期为一周 response.addCookie(cookie); ``` 这段代码创建了一个名为"username"的Cookie,值为"John",并将有效期设置为7天。 接着,我们讨论如何在客户端读取Cookie。在JSP或Servlet的...

    JAVA操作COOKIE.docx

    JAVA 操作 COOKIE Cookie 是一种小型文本文件...JAVA 操作 COOKIE 主要包括设置 Cookie、读取 Cookie、删除 Cookie 和修改 Cookie 四个方面,通过设置 Cookie 的路径、域名和生存期,可以实现两个网站共用 Cookies。

    JAVA操作COOKIE.pdf

    标题:JAVA操作COOKIE.pdf 在Web开发领域,Cookie作为一种服务器通过HTTP响应发送到用户浏览器并保存在本地的一小段数据,一直扮演着非常重要的角色。它能够帮助服务器记录用户的偏好设置,跟踪会话状态,以及存储...

    JAVA操作COOKIE

    以下是关于 Java 操作 COOKIE 的详细说明: 1. **设置 Cookie** - 创建一个名为 "key",值为 "value" 的 Cookie 对象:`Cookie cookie = new Cookie("key", "value");` - 设置生存期:`cookie.setMaxAge(60);` 这...

    Java 模拟cookie登陆简单操作示例

    Java 模拟Cookie 登陆简单操作示例 在本文中,我们将介绍 Java 模拟 Cookie 登陆的简单操作,结合实例形式分析了 Java 模拟 Cookie 登陆的相关原理与基本实现技巧。本示例主要是为了演示如何使用 Java 语言模拟 ...

    java操作cookie-实现两周内自动登录.doc

    java 操作 Cookie 实现两周内自动登录 java 操作 Cookie 实现两周内自动登录是指通过在用户第一次登录网站时,网站向客户端发送一个包含有用户名的 Cookie,当用户下次访问时,浏览器将该 Cookie 发送回网站服务器...

    java对cookie的操作java对cookie的操作

    在Java中,我们可以使用HttpServletResponse的`addCookie()`方法来设置Cookie。首先创建一个Cookie对象,通过构造函数传入键值对,例如`new Cookie("key", "value")`。然后设置Cookie的存活时间,`setMaxAge()`方法...

    java操作cookie示例(删除cookie)

    总结一下,Java操作Cookie主要包括设置Cookie(设置键值、生存时间和路径),读取Cookie(通过`getCookies()`方法)以及删除Cookie(创建一个MaxAge为0的新Cookie)。理解这些基本操作对于进行Web开发是至关重要的,...

    java对cookie的操作.doc

    以下是对Java操作Cookie的详细解释: 1. **创建Cookie**: - 创建Cookie对象时,通过`new Cookie(String name, String value)`构造方法指定Cookie的名称和值。例如:`Cookie cookie = new Cookie("cookiename",...

    JAVA之cookie与session

    ### JAVA之cookie与session #### 一、Cookie与Session的概念 **Cookie** 与 **Session** 是两种在 Web 开发中用于跟踪用户会话的重要技术。它们的主要目标是在客户端和服务端之间保持状态。 - **Cookie** 机制...

    java中cookie的使用教程

    3. **设置Cookie属性** - **最大存活时间**:通过`setMaxAge()`设置,单位为秒。如果设置为0,表示立即失效;如果不设置,则默认为浏览器会话期间有效。 - **路径和域**:`setPath()`用于指定Cookie的作用路径,...

    javacookie的使用

    4. **生命周期管理**: 适当设置Cookie的生命周期,避免不必要的资源占用。 通过以上介绍,我们可以看到,在Java Web环境中,Cookie的使用非常灵活且强大,能够帮助开发者轻松实现许多高级功能。当然,正确地使用...

    java访问.net webservice获取与设置cookie

    本篇文章将深入探讨如何使用Java访问.NET Web服务,并在过程中获取和设置Cookie,以便实现更高效、安全的会话管理。首先,让我们理解Web服务的基本概念。 Web服务是一种通过HTTP协议提供功能的方法,使得不同系统间...

    java cookie 例子

    // 设置Cookie的作用域,即只能在哪个域名下访问 cookie.setPath("/"); // 默认值,整个域名 // 将Cookie添加到响应中 response.addCookie(cookie); ``` 当服务器收到请求时,可以通过`HttpServletRequest`的`get...

Global site tag (gtag.js) - Google Analytics