`

Java小技巧:关于Cookie的操作

阅读更多

测试环境:JDK1.5、Tomcat5.5

  1.设置Cookie

  1 Cookie cookie = new Cookie("key", "value");

  2 cookie.setMaxAge(60); //设置60秒生存期,如果设置为负值的话,则为浏览器进程Cookie(内存中保存),关闭浏览器就失效。

  3 cookie.setPath("/test/test2"); //设置Cookie路径,不设置的话为当前路径(对于Servlet来说为request.getContextPath() + web.xml里配置的该Servlet的url-pattern路径部分)

  4 response.addCookie(cookie);

  2.读取Cookie

  1 1//该方法可以读取当前路径以及“直接父路径”的所有Cookie对象,如果没有任何Cookie的话,则返回null

  2 2Cookie[] cookies = request.getCookies();

  3.删除Cookie

  1 Cookie cookie = new Cookie("key", null);

  2 cookie.setMaxAge(0); //设置为0为立即删除该Cookie

  3 cookie.setPath("/test/test2"); //删除指定路径上的Cookie,不设置该路径,默认为删除当前路径Cookie

  4 response.addCookie(cookie);

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

  /

  /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,容易误操作。(当然前提是域名相同)

分享到:
评论

相关推荐

    Java小技巧:关于Cookie的操作.txt

    Java小技巧:关于Cookie的操作.txt

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

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

    JAVA100例之实例81Cookie计数器

    在Java编程中,Cookie是一种非常重要的技术,它用于在客户端和服务器之间传递信息,尤其是在实现用户会话管理、个性化设置等方面。...通过不断实践和深入学习,开发者可以掌握更多关于Cookie和Web开发的高级技巧。

    Java应用技巧

    ### Java应用技巧:对于Cookie的操作详解 #### 一、引言 在Web开发中,Cookie是一种常用的技术,用于存储用户的一些基本信息(例如登录状态、购物车等),以便于后续访问时能够快速识别用户身份,提高用户体验。本...

    cookie

    标题中的“cookie”一词指的是Web...以上是关于Cookie技术的基本介绍,具体实现细节和使用技巧可能需要参考原文档或“cookie.jsp”文件的内容。对于开发者来说,理解和熟练使用Cookie是构建高效、安全的Web应用的基础。

    Java Scrip环境中网络课程开发之cookie技术应用研究.pdf

    Java Scrip环境中的网络课程开发之cookie技术应用研究是一篇关于JavaScript环境中cookie技术在网络课程开发中的应用研究论文。论文首先介绍了cookie技术的概念和特点,然后详细讨论了cookie技术在网络课程开发中的...

    cookie编程

    8. **源码解析**:博主可能提供了使用特定编程语言(如Java、JavaScript或Python)操作Cookie的示例代码,解释了如何创建、读取、更新和删除Cookie。 在CookieDemo这个示例项目中,可能包含了实现上述功能的源代码...

    JSP处理Cookie的方法详解.txt

    #### 三、Cookie的详细属性及其操作 - **`getComment/setComment`**:获取或设置Cookie的注释。 - **`getDomain/setDomain`**:获取或设置Cookie的有效域名。例如,`.sitename.com`会使得Cookie对所有以`sitename....

    最新Java面试题视频网盘,Java面试题84集、java面试专属及面试必问课程

    │ Java面试题74:sql语句优化小技巧.mp4 │ Java面试题75:批量插入几百万条数据.mp4 │ Java面试题76:有没有使用过redis.mp4 │ Java面试题77:redis的使用场景.mp4 │ Java面试题78:redis存储对象的方式.mp4 │...

    2021年最新java面试题--视频讲解(内部培训84个知识点超详细).rar

    Java面试题74:sql语句优化小技巧 Java面试题75:批量插入几百万条数据 Java面试题76:有没有使用过redis Java面试题77:redis的使用场景 Java面试题78:redis存储对象的方式 Java面试题79:redis数据淘汰机制 Java...

    JSP_Cookie的使用

    以下是一个简单的JSP页面代码示例,展示了如何创建和读取Cookie: ```jsp // 创建Cookie Cookie ck = new Cookie("cww2", "test2!!"); ck.setMaxAge(65536); // 设置生存期 response.addCookie(ck); // 读取...

    jsp编程中的小技巧(仅供参考)

    在JSP(JavaServer Pages)开发过程中,经常会遇到一些需要技巧性处理的问题,本文将重点介绍两个常见的小技巧:如何获取虚拟目录的物理路径以及如何解决`response.sendRedirect`带中文的问题。此外,还会简要提及...

    java版的房屋租赁系统

    这个小项目对于学习Java编程、数据库操作以及软件工程实践来说,是一个非常有价值的实例。以下是对该项目涉及的主要知识点的详细解析: 1. **Java基础**:项目的主体是用Java编写的,因此需要掌握Java的基础语法,...

    java jdk实列宝典 光盘源代码

    15 applet java可以编写两类程序,applications和applet,applications可以在控制台直接运行,与其他高级编程语言没有太大区别,而java的特色在于它具有编制小应用程序的功能,applet可以在internet上传输并在兼容...

    Java进阶路线

    NIO (New I/O) 提供了非阻塞I/O操作的能力,而 JUC (Java Util Concurrency) 包含了一系列线程安全的数据结构和工具类。 **14. Lambda** Lambda 表达式允许你以更简洁的方式定义接口实现。这对于函数式编程风格的...

    java项目源码演示前台预订+后台管理酒店管理系统.zip

    本项目是一个基于Java技术的酒店管理系统,涵盖了酒店预订与后台管理的全部流程,旨在提供一个完整的教学示例或...通过分析和运行源码,不仅可以掌握Java编程技巧,还能了解到如何设计和实现一个完整的管理信息系统。

    java浏览器

    Java浏览器是一种基于Java编程语言...通过这个Java小例子,学习者不仅可以深化Java编程技能,还能了解到网络编程和GUI设计的基本原理。同时,这样的项目也鼓励开发者实践和理解Web浏览器的工作原理,提升问题解决能力。

    java工程师面试技巧.doc.pdf

    Java工程师面试时,需要掌握广泛的知识点,涵盖了基础语法、数据结构、IO操作、多线程、网络编程、数据库交互等多个方面。以下是一些主要的面试重点: **一、Java基础知识** 1. Java有8种基本数据类型,包括整型...

    百度面试题汇总(java)

    ### 百度面试题汇总(Java) #### 一、Java基础知识 1. **自我介绍**:面试官希望从自我介绍中获取应聘者的基本背景信息,包括但不限于教育经历、工作经验等,以便于后续针对这些背景提出具体问题。 2. **项目...

    安全小技巧之个人电脑防黑客入侵八准则参照.pdf

    ### 安全小技巧之个人电脑防黑客入侵八准则 在网络时代,个人电脑的安全变得尤为重要。随着黑客工具的普及和技术的发展,黑客攻击的风险日益增加。本文档“安全小技巧之个人电脑防黑客入侵八准则参照.pdf”提供了一...

Global site tag (gtag.js) - Google Analytics