Java小技巧:关于Cookie的操作

2016-02-19 20:08 4 1 收藏

今天图老师小编要向大家分享个Java小技巧:关于Cookie的操作教程,过程简单易学,相信聪明的你一定能轻松get!

【 tulaoshi.com - 编程语言 】

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

  1.设置Cookie

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

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

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

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

  4response.addCookie(cookie);

  2.读取Cookie

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

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

  3.删除Cookie

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

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

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

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

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


来源:https://www.tulaoshi.com/n/20160219/1622838.html

延伸阅读
标签: Java JAVA基础
 四、 需要注意的一些问题 通过上面两个简单的例子,可以看到,用JSP进行Cookie的操作,是非常简单的。不过我们在实际操作中还要注意一些问题: 1. Cookie的兼容性问题 Cookie的格式有2个不同的版本,第一个版本,我们称为Cookie Version 0,是最初由Netscape公司制定的,也被几乎所有的浏览器支持。而较新的版本,Cookie...
标签: Java JAVA基础
 一、 前言 说起来,Cookie应该是一种应用较久的技术了。早在HTML刚刚出现的时候,在每个独立的页面之间没有办法记录和标识不同的用户。后来人们就发明了Cookie技术,当用户访问网页时,它能够在访问者的机器上创立一个文件,我们把它叫作Cookie,写一段内容进去,来标识不同的用户。如果下次用户再访问这个网页的时候,它又能够读出...
标签: Web开发
今天第一次尝试使用cookie,在网上找了个例子,简单一用,基本可以满足要求。 SCRIPT type=text/javascript function Set(Cookie_name) { var Then = new Date() Then.setTime(Then.getTime() + 1*3600000 ) //小时 document.cookie = Cookie_name+"=true;expires="+ Then.toGMTString() } function ...
标签: 办公软件
最近使用Word的时候总结了一些常用的小技巧,特地贡献出来,希望能对经常使用Word的朋友有所帮助。这里所有的小技巧均以Word中文版为例,适用于各个Word版本。 1、文章快速定位 当编辑比较长文档时,经常需要大段翻页,使用鼠标拖滚动条的速度太慢,键盘的光标键或翻页键又不能精确定位,如果页数太多的话效率也比较低。这里告诉大家...
一.获得控制台用户输入的信息 /** *//**获得控制台用户输入的信息 * @return * @throws IOException */public String getInputMessage() throws IOException...{System.out.println("请输入您的命令∶");byte buffer[]=new byte[1024];int count=System.in.read(buffer);char[] ch=new char[count-2];//最后两位为结束符,删去不...

经验教程

765

收藏

23
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部