- 浏览: 1010399 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (394)
- OSGI (14)
- 多线程 (10)
- 数据库 (30)
- J2ME (1)
- JAVA基础知识 (46)
- 引用包 (1)
- 设计模式 (7)
- 工作流 (2)
- Ubuntu (7)
- 搜索引擎 (6)
- QT (2)
- Ubuntu下编程 (1)
- 小程序 (2)
- UML (1)
- Servlet (10)
- spring (16)
- IM (12)
- 文档视频转为flash格式在线播放 (19)
- Maven (8)
- 远程调用 (2)
- PHPRPC (1)
- EXTJS学习 (2)
- Hibernate (16)
- 技术文章 (38)
- flex (5)
- 海量数据处理 (5)
- FTP (8)
- JS (10)
- Struts (1)
- hibernate search (13)
- JQuery (2)
- EMail (3)
- 算法 (4)
- SVN (7)
- JFreeChart (4)
- 面试 (4)
- 正规表达式 (2)
- 数据库性能优化 (10)
- JVM (6)
- Http Session Cookie (7)
- 网络 (12)
- Hadoop (2)
- 性能 (1)
最新评论
-
hy1235366:
能够随便也发一下,你退火算法程序使用的DistanceMatr ...
模拟退火算法总结(含例子)(转) -
梅强强:
感谢分享。。帮大忙了
swftools转换文件时线程堵塞问题的解决方法 -
wenlongsust:
openoffice和文件不在同一个服务器上,用过吗?
[JODConverter]word转pdf心得分享(转) -
2047699523:
如何在java Web项目中开发WebService接口htt ...
利用Java编写简单的WebService实例 -
abingpow:
唉,看起来好像很详细很不错的样子,可惜不是篇面向初学者的文章, ...
Spring与OSGi的整合(二)(转)
一、cookie的作用
在我们平常写的B/S程序中,会经常用到cookie,主要有以下一些作用:
1、 记录用户名和密码
以及该用户需要保存的一些信息,如购物购站,使用cookie,可以让用户自动登录到站点等。
2、 定制站点
可以使用cookie来记录用户的偏好。
3、 定向广告
可以使用cookie来记录用记经常访问的主题,并向他们显示与这些主题相关的广告。
二、向客户程序发送cookie
1、 创建cookie对象
Cookie c = new Cookie(“userId”,”landril”);
2、 设置最大时效,默认该cookie是存储在浏览器的内在中,用户关闭浏览器则被删除,下面的方法是将cookie存储在硬盘上。
c.setMaxAge(60*60*24);//一天,如果设置为0则是删除该cookie
3、 将cookie放入到HTTP响应报头,可以使用HttpServletResponse的addCookie方法,此方法不修改之前指定的Set-Cookie报头,而是创建新的报头。
response.addCookie(c);
注意:设置cookie的步骤为创建cookie对象,设置最大时效,将cookie放入响应报头,即发送到客户程序,记住一定要将cookie发送到客户程序
三、从客户端读取cookie
1、 调用HttpServletRequest的getCookies得到一个Cookie对象的数组
2、 对数组进行循环,调用cookie的getName方法,获取具体的cookie的值
Cookie[] cookies = request.getCookies(); if(cookies != null){ for(int i=0;i<cookies.length;i++){ Cookie c = cookies[i]; if(“userId”.equals(c.getName())){ System.out.println(c.getValue()); } } }
四、cookie的常用方法
1、 setComment()/getComment():指定或查找与该cookie相关的注释
2、 setDomain()/getDomain():设置或读取该cookie适用的域
3、 setMaxAge()/getMaxAge():操作cookie保留的时间,多长时间后过期
4、 getName():读取cookie的名称
5、 setPath()/getPath():设置或取得cookie适用的路径
cookie.setPath(“/”);指定服务器的所有页面都应该收到该cookie
6、 setSource()/getSource():指定cookie是否只能通过加密连接(SSL)
默认false,表示cookie适用所有连接
7、 setValue()/getValue():指定或获取cookie的值
五、下面给出一个cookie的最简单的使用例子cookie.jsp:
<%@ page contentType="text/html; charset=GB2312" import="java.util.*"%> <%@ page import="javax.servlet.http.Cookie" %> <html> <head> <title>cookie 用户登录次数</title> </head> <body> <center> <font size = 5 color = blue>cookie 用户登录次数</font> </center> <hr><p></p> <% Cookie temp = null; Cookie[] cookies = request.getCookies(); int cookielen = 0; if(cookies != null) cookielen = cookies.length; int count=1; //取得cookie变数阵列的长度 if(cookielen != 0) //判断是否成功取得cookie资料 { for (int i = 0; i < cookielen; i++) { temp = cookies[i]; //取得cookies数组中的Cookie变量 if (temp.getName().equals("accessCount")) { count=Integer.parseInt(temp.getValue());//获取登录页面次数 } } } %> 通过这个浏览器<font color = blue></font> 您的登录次数是<font color = red> <%= count %> </font><br> <% //下次显示会多一次 Cookie accessCount = new Cookie("accessCount", String.valueOf(count+1)); accessCount.setMaxAge(60);//这个只是设置它的生命周期,也就是说,当你设置了这个cookie的有效期为1分钟时,你关了浏览器它不是由浏览器来监视cookie文件夹,发现过期就删除去,而是当用户下去请求该站点时,站点会分析出这个cookie文件内容已过期,就会发一个新的文件内容到客户端,并请求删除或覆盖原来过期的cookie文件,然后浏览器才会执行删除操作,再访问原cookie文件时就找不到了 response.addCookie(accessCount); //将更新后的数据存入cookie变数加入cookie中,存在客户端 %> </body> </html>
放入服务器,进行访问时,同时看一下你的浏览器存放cookie文件所在的文件夹,就可以看到访问期时,会产生一个cookie文件,当你不设置setMaxAge时或将它值设置为0时,就不会产生cookie文件,没有设置setMaxAge属性
cookie信息会存放在浏览器中,而设置了setMaxAge属性则会存放在磁盘中。
再转:
各位高手,建立的cookies,但是删除的时候失败,想问一下应该怎样做。我在一个test文件夹下的cookies.jsp里建立
了两个cookies,主要代码如下:
<% Cookie sp=new Cookie("spread",spread); Cookie spn=new Cookie("spreadN",spreadN); sp.setMaxAge(360*24*60*60); spn.setMaxAge(360*24*60*60); sp.setPath("/"); spn.setPath("/"); response.addCookie(sp); response.addCookie(spn); %>
然后在同一个目录下用一个logout.jsp文件,想删除cookies,主要代码如下:
<% Cookie sp=new Cookie("spread",null); Cookie spn=new Cookie("spreadN",null); sp.setMaxAge(0); spn.setMaxAge(0); sp.setPath("/"); spn.setPath("/"); response.addCookie(sp); response.addCookie(spn); %>
但是删除不了,请求各位帮忙,解决了可加高分。
最佳答案
修改logout.jsp文件如下
<% Cookie[] cookies=request.getCookies(); if(cookies!=null) { for(int i=0;i<cookies.length;i++){ Cookie sp = cookies[i].getName(); if(sp.equals("spreadN")) { cookies[i].setMaxAge(0); response.addCookie(cookies[i]); } if(sp.equals("spread")) { cookies[i].setMaxAge(0); response.addCookie(cookies[i]); } } } %>
发表评论
-
提取html内容放入xml文件时空格问题
2011-05-24 17:09 2660由于项目的需要,将网站上的信息抓取下来,提取出想要的信息,然后 ... -
简述URI和URL区别(转)
2011-04-20 16:23 1418URL:(Uniform Resoure Locato ... -
jsp页面乱码解决方案及编码设置问题(转)
2011-03-27 15:46 1841经常遇到关于JSP页面乱码的问题,在网上也查了相关的帖子,故在 ... -
使用JSTL标签异常
2011-01-02 09:48 1851我使用JSTL标签,如下所示: <c:when ... -
HSQL入门及使用指南 (转)
2010-12-27 22:29 2191HSQL可以到官方网站 ... -
使用POI读取Word207和Excel2007的例子 (转)
2010-12-26 16:19 2618天在写全文检索功能时,POI读取Word2007和Excel2 ... -
SSH session连接关闭问题的解决(转)
2010-12-15 22:12 21532008-07-20 22:25:27,531 INF ... -
svn和myeclipse使用搜狗浏览器代理
2010-12-11 16:42 18141 在svn里的setting功能选项中选择Network,勾 ... -
Kissy Suggest 自动提示例子
2010-12-10 14:45 3823由淘宝团队开发出来的Kissy Suggest 自动提示组件是 ... -
计算机开机启动过程详解(转)
2010-12-10 13:22 13901、http://product.zdnet.com. ... -
更强的自动补全提示:提示补全组件:Kissy Suggest(转)
2010-12-09 16:25 1059去年针对谷歌的搜索提示,发过一篇文章:从谷歌的一个Bug说 ... -
磁盘分区与文件系统(转)
2010-12-09 09:38 2046一个磁盘是分成一个个扇区来存放信息,整个磁盘的第一个扇区是作 ... -
QQ通信原理(转)
2010-12-02 21:52 6660QQ通信原理我研究的是QQ ... -
邮件激活
2010-11-17 09:34 1457今天看了一下公司做的网站,看到有关邮件激活的程序,就做下笔记。 ... -
HttpSessionBindingListener获取在线用户数(转)
2010-11-01 14:59 2369下面为我的测试 ... -
Cookie工作原理(转)
2010-10-29 09:30 1824Cookies基础 Cookies是 ... -
swfobject的使用
2010-10-26 09:54 32231 swfobject可以将swf文件嵌入到网页内,它是一个j ... -
java获取当前工程名(转)
2010-10-24 09:14 1628String projectname = System.get ... -
利用Java编写简单的WebService实例(转)
2010-10-22 15:30 2740/* * File name: TestHell ... -
利用Java编写简单的WebService实例
2010-10-22 14:55 87119使用Axis编写WebService比较简单,就我 ...
相关推荐
总结来说,Cookie适合存储少量、短期、需要在服务器端访问的数据,而localStorage则适用于存储大量、长期、仅客户端使用的数据。在实际应用中,开发者可以根据需求选择合适的存储方案。对于学习和实践,"CookieTest...
接下来,我们将构建一个简单的计数器应用,展示如何使用Cookie记录用户访问次数: 1. **初始化计数器**:在页面加载事件中检查是否存在名为`count`的Cookie,如果存在则读取其值并转换为整型,否则初始化为1。 `...
如果项目主要基于Silverlight构建,且对Cookie的需求相对简单,那么Silverlight的HtmlPage.Document接口可能足够使用。但如果需要更灵活的控制和服务器端的交互,ASP.NET的Cookie机制将更为合适。 通过阅读压缩包中...
在本文中,我们将深入探讨如何使用JavaServer Pages (JSP) 实现基本的Cookie功能。Cookie是Web应用程序中用于存储用户会话数据的一种机制,它允许服务器在客户端(即用户的浏览器)上保存信息,以便在后续请求中进行...
我们可以使用 Java 语言来发送 HTTP 请求,并将 Cookie 信息写入到 HTTP 头部中,以便模拟用户的登陆行为。 Java 模拟 Cookie 登陆的实现 下面是一个简单的 Java 模拟 Cookie 登陆的示例代码: ```java import ...
下面是一个简单的Cookie使用示例: ```jsp ; charset=UTF-8" %> // 创建Cookie对象 Cookie cookie = new Cookie("username", "John Doe"); // 设置Cookie的生命周期,单位为秒 cookie.setMaxAge(3600); // 1...
本文将深入探讨这两个概念,并通过一个简单的登录案例来阐述它们的使用。 首先,Cookie是服务器发送到用户浏览器并存储在本地的一小块数据。它可以用来跟踪用户的偏好、状态或任何其他信息。每个Cookie都有一个唯一...
例如,一个简单的Cookie工具类可能如下所示: ```java public class CookieUtil { public static void addCookie(HttpServletResponse response, String name, String value, int maxAge, String path) { Cookie...
下面是一个简单的示例,展示了如何使用jQuery Cookie插件创建、读取Cookie: ```javascript $(document).ready(function() { // 创建Cookie $.cookie('name', 'runoob'); // 读取Cookie var name = $.cookie('...
设置一个cookie非常简单,只需要使用赋值语句即可: ```javascript document.cookie = "userId=828"; ``` 如果想要设置多个键值对,可以在同一行中使用分号加空格进行分隔: ```javascript document.cookie = ...
以下是一个简单的ASP脚本,演示了如何使用Cookie来跟踪用户访问次数: ```vbscript Dim NumVisit ' 声明变量 NumVisit = Request.Cookies("chunfeng")("totalvisit") ' 检查用户来访问过多少次 If NumVisit = "" ...
在Java中,创建Cookie非常简单。下面的示例展示了如何创建并设置用户名和密码的Cookie: ```java // 创建用户名Cookie对象 Cookie cookieUserName = new Cookie("userName", userName); cookieUserName.setMaxAge...
在 Java 中建立 Cookie 非常简单,主要通过 HttpServletResponse 对象的 addCookie() 方法来实现。下面是一个简单的示例代码: ```java HttpServletResponse response; Cookie cookie = new Cookie("cookiename", ...
在实际应用中,EditThisCookie.crx的这一特性使得跨平台和自动化测试变得更加简单。例如,当需要频繁测试同一用户登录状态下的网站功能时,可以先在浏览器中获取到登录后的Cookie,然后通过curl快速复现该状态,大大...
获取 Cookie 的过程也非常简单,只需要调用 `$.cookie()` 并传入 Cookie 名称即可: **示例代码**: ```javascript var value = $.cookie('name'); // 获取名为 'name' 的 Cookie 值 console.log(value); // 输出...
### Cookie、Session与Token的区别及使用详解 #### 一、Cookie **定义**: Cookie是一种用于在客户端保持状态的方案。简单来说,当你访问一个网站时,该网站可能会在你的计算机上留下一些信息(如用户名、密码等),...
在PHP编程中,Cookie是一种常见的身份验证机制,用于在客户端(浏览器)和服务器之间...了解这些基础知识后,你可以根据提供的源代码学习和理解实际的实现细节,并可能进一步优化和增强这个简单的Cookie身份验证机制。
在.NET中创建Cookie非常简单,首先需要创建一个HttpCookie对象,并设置相应的属性,如: ```csharp HttpCookie cookie = new HttpCookie("myCookie"); cookie.Value = "这是Cookie的值"; cookie.Expires = DateTime...
该插件名为v-cookie,正如其标题和描述所述,它的特点是使用简单且无任何外部依赖。这意味着你无需额外安装其他库,只需将这个插件集成到你的Vue项目中,即可轻松地进行cookie的操作。 在JavaScript开发中,操作...