创建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. HDU3362+状态压缩

    dp[ i ]表示该状态下得所需花费. /* 状态压缩dp dp[i] = min( dp[ i-j ]+cost[ j ] ); 由i-j的状态转到i的状态 */ #include<stdio ...

  2. 实时时钟、系统时钟和CPU时钟的区别

    http://blog.sina.com.cn/s/blog_68f909c30100pli7.html 实时时钟:RTC时钟,用于提供年.月.日.时.分.秒和星期等的实时时间信息,由后备电池供电,当 ...

  3. M-JPEG和MPEG-4的区别 M-JPEG VS MPEG

    http://blog.sina.com.cn/s/blog_4b357b300100gre9.html M-JPEG VS MPEG http://blog.csdn.net/bluesky_sun ...

  4. ANDROID_MARS学习笔记_S02_006_APPWIDGET2_PendingIntent及RemoteViews实现widget绑定点击事件

    一.代码流程 1.ExampleAppWidgetProvider的onUpdate(Context context, AppWidgetManager appWidgetManager, int[] ...

  5. Android 编译大全

    http://quanminchaoren.iteye.com/blog/840917

  6. 深入理解c语言_从编译器的角度考虑问题_纪念Dennis Ritchie先生

    开源中国: Dennis Ritchie教授过世了,他发明了C语言,一个影响深远并彻底改变世界的计算机语言.一门经历40多年的到今天还长盛不训的语言,今天很多语言都受到C的影 响,C++,Java,C ...

  7. [Stephen]C#中调用C++动态链接库

    1.主程序声明引用外部方法,并完成方法调用

  8. base64dll

    继上次的dll学习后,想开发个软件,连接到百度的云存储服务器,上传文件.发现要算秘钥,在网上找了到了hmac-sha1,base64的源码,发现有些是c++写的,有些是c写的一起写到一个文件里有些麻烦 ...

  9. 怎样从官网下载Spring的jar包

    第一种,简单粗暴直接http://repo.springsource.org/libs-release-local/org/springframework/spring/3.2.4.RELEASE/s ...

  10. 2015年10月22日CSS学习笔记

    XHTML1.0对HTML4.0的改进 借鉴了XML的写法,语法更加严格. 把页面的内容和样式分离了,废弃了html4中的表示样式的标签和属性.推荐使用css来描述页面的样式. CSS样式的优先级 ! ...