创建Cookie

  1. // new一个Cookie对象,键值对为参数
  2. Cookie cookie = new Cookie("key", "value");
  3. // 设置Cookie最大生存时间,以秒为单位,负数的话为浏览器进程,关闭浏览器Cookie消失
  4. cookie.setMaxAge(60);  // 一分钟
  5. // 将Cookie添加到Response中,使之生效
  6. response.addCookie(cookie);

读取Cookie,读取Cookie只能从request中获取全部Cookie,然后迭代之.虽然Cookie也是键值对,但是貌似不能像Map一样通过Key来获取值.

  1. // 从request中获取Cookie,拿到的是一个Cookie数组
  2. Cookie[] cookies = request.getCookies();
  3. // 然后迭代之
  4. if (cookies != null && cookies.length > 0) { //如果没有设置过Cookie会返回null
  5. for (Cookie cookie : cookies) {...}
  6. }

删除Cookie,删除Cookie的话,只需要将Cookie的生存期设为0即可

  1. Cookie[] cookies = request.getCookies();
  2. if (cookies != null && cookies.length > 0) {
  3. for (Cookie cookie : cookies) {
  4. String name = cookie.getName();
  5. // 找到需要删除的Cookie
  6. if (name.compareTo("key") == 0) {
  7. // 设置生存期为0
  8. cookie.setMaxAge(0);
  9. // 设回Response中生效
  10. response.addCookie(cookie);
  11. }
  12. }
  13. }

修改Cookie,修改Cookie和删除的步骤是一样的,先找到需要删除的Cookie,然后设置它的新的Value,再设回Response

  1. Cookie[] cookies = request.getCookies();
  2. if (cookies != null && cookies.length > ) {
  3. for (Cookie cookie : cookies) {
  4. if (cookie.getName.compareTo("key") == 0) {
  5. cookie.setValue("newValue");
  6. response.addCookie(cookie);
  7. break;
  8. }
  9. }
  10. }

知识点整理之Java的Cookie操作的更多相关文章

  1. Python知识点整理,基础5 - 文件操作

  2. Python知识点整理,基础4 - 集合操作

  3. Python知识点整理,基础3 - 字典操作

  4. Python知识点整理,基础2 - 列表操作

  5. java常见文件操作

    收集整理的java常见文件操作,方便平时使用: //1.创建文件夹 //import java.io.*; File myFolderPath = new File(str1); try { if ( ...

  6. Java容器相关知识点整理

    结合一些文章阅读源码后整理的Java容器常见知识点.对于一些代码细节,本文不展开来讲,有兴趣可以自行阅读参考文献. 1. 思维导图 各个容器的知识点比较分散,没有在思维导图上体现,因此看上去右半部分很 ...

  7. java对cookie的操作

    java对cookie的操作比较简单,主要介绍下建立cookie和读取cookie,以及如何设定cookie的生命周期和cookie的路径问题. 建立一个无生命周期的cookie,即随着浏览器的关闭即 ...

  8. java与javascript对cookie操作的工具类

    Java对cookie的操作 package cn.utils; import java.util.HashMap; import java.util.Map; import javax.servle ...

  9. 【java+selenium3】自动化cookie操作+图形验证码处理 (十五)

    一.cookie操作 1.获取浏览器所有的cookie import java.util.Set; import org.openqa.selenium.Cookie; //获取浏览器所有的cooki ...

随机推荐

  1. 解决Ubuntu root账户的问题

    问题的提出:在Linux环境下,许多操作需要有管理员权限才能进行.如果没有root权限,就连基本的文件拷贝操作都只能在用户文件夹下进行,而对于Ubuntu系统,安装时是没有设定root帐号的,那么怎样 ...

  2. 查看linux系统的版本

    1. 查看内核版本命令: 1) [root@SOR_SYS ~]# cat /proc/version Linux version 2.6.18-238.el5 (mockbuild@x86-012. ...

  3. js构造函数

    使用函数做自动化 function createObj(nick, age){ var obj = { nick: nick, age: age, printName: function(){ con ...

  4. [wikioi]装箱问题

    http://wikioi.com/problem/1014/ 01背包问题是最经典的动态规划之一,这道题目甚至是这其中还简单的一种,因为价值就是本身的重量了.本来比如,w是总重量限制,v[]是每个的 ...

  5. 164. Maximum Gap

    题目: Given an unsorted array, find the maximum difference between the successive elements in its sort ...

  6. chrome插件 postman插件 接口测试、API & HTTP 请求调试工具

    Postman 是一个非常棒的Chrome扩展,提供功能强大的API & HTTP 请求调试. 它能够发送任何类型的HTTP requests (GET, HEAD, POST, PUT..) ...

  7. 【HDOJ】4455 Substrings

    5000ms的时限,还挺长的.算法是DP.思路是找到ans[1..n]的结果,然后Query就容易做了.问题是怎么DP?考虑:1 1 2 3 4 4 5w=1: 7, 7 = 1 * 7w=2: 10 ...

  8. hdu4632Palindrome subsequence

    http://acm.hdu.edu.cn/showproblem.php?pid=4632 TLE了N次 原因居然是取模次数太多了..! 这数据卡的好紧 还是我写的太搓..828ms挤过 s[i]= ...

  9. LFS 中文版手册发布:如何打造自己的 Linux 发行版

    您是否想过打造您自己的 Linux 发行版?每个 Linux 用户在他们使用 Linux 的过程中都想过做一个他们自己的发行版,至少一次.我也不例外,作为一个 Linux 菜鸟,我也考虑过开发一个自己 ...

  10. 从头开始编写一个Orchard网上商店模块(2) - 配置您的Orchard开发环境

    原文地址:http://skywalkersoftwaredevelopment.net/blog/writing-an-orchard-webshop-module-from-scratch-par ...