一 Cookie的简单实例---如何创建和添加到Servlet中
第一步:实例化一个Cookie,用来保存会话状态信息
Cookie cookie1 =newCookie("name",name);
cookie1.setMaxAge(24*60*60);//设置一天的时间
Cookie cookie2 =newCookie("nicknName",nickName);
第二步:将生成的Cookie对象添加到响应消息头字段中,从服务器发送给客户端
response.addCookie(cookie1);
response.addCookie(cookie2);
注:(1)在创建了Cookie之后,如果没有设置有效的日期,只存在内存中,只对当前的进程有效.设置日期的时候要注意,日期是用秒来计算的,所有必须转换为秒,格式如下:
有效日期的设置用方法:setMaxAge(24*60*60)
(2)Cookie是以键值对的形式存在的,所有初始化的时候是用键值对
二 Cookie方法的使用
1.获取对象的值和属性
cookie1.getName()
cookie1.getValue()
System.out.println(cookie1.getName()+","+cookie1.getValue());
2.设置对象的值和属性
cookie1.setValue("tom");
注:设置值之后,在地址栏上的值就是它,而且每次输出getValue()时都为空。只有在重置了域名之后,才会改变name值,并且在getValue()是输出的是设置的值,不是null。
3.设置域名
cookie1.setDomain(".csdn.com.cn");
cookie2.setDomain("localhost");
System.out.println(cookie1.getDomain()); //不为空
4.获取Cookie消息头中的值------消息头有多个,用数组
从请求对象中获取Cookie值
Cookie[] cookies = request.getCookies();
if(cookies!=null){
for(inti = 0;i<cookies.length;i++){ System.out.println(cookies[i].getName()+":"+cookies[i].getValue()+";"+cookies[i].getMaxAge()+";"+cookies[i].getDomain());
}
注:如果cookies为null,则证明是第一次创建Cookie。并且在每次创建Cookie之后,新创建的Cookie会替代旧的作为get消息头,但是响应服务器的时候是新创建的。
5.Cookie请求头字段
(1)浏览器使用Cookie请求头字段将Cookie信息回送给WEB服务器。
(2)多个Cookie信息通过一个Cookie请求头字段回送给WEB服务器。
(3)浏览器根据下面的几个规则决定是否发送某个Cookie信息:
请求的主机名是否与某个存储的Cookie的Domain属性匹配;
请求的端口号是否在该Cookie的Port属性列表中;
请求的资源路径是否在该Cookie的Path属性指定的目录及子目录中;
该Cookie的有效期是否已过。
三 实例应用--获取上次访问的时间
Cookie[] cookies = request.getCookies();
if(cookies!=null){
//通过循环遍历
for(inti = 0;i<cookies.length;i++){
//上一次的访问时间是根据名字是否相同判断的
String last = cookies[i].getName();
if("last_time".equals(last)){
out.print("你是老用户,上一次访问 时间"+cookies[i].getValue());
break;
}
}
}else{
out.print("你是第一次访问站点!");
}
注:cookies=null 表示的是第一次访问
四 注意点总结
(1)不是每次访问的Cookie都封装在请求消息中,如果在本地找不到想要访问的Cookie,就不会封装
(2)每一个Cookie都有一个domain属性 domain是URL ,即是访问的地址
(3)在发生请求之前先去本地找Cookie,如果在本地找到相同的Cookie,就封装到一个请求消息头字段,发送给服务端
(4)如果setPath()属性和setDomain属性,端口号和有效日期不过期,才会封装到消息头中并发送.
(5)域名的设置-------实现跨域的操作:
Cookie1.setDomain(.csdn.com.cn);
(6)只有在path、主机、端口、有效日期不过期的情况下,才会覆盖,要不会当成一个新的Cookie
分享到:
相关推荐
Cookie技术应用实例,可以实现资源共享,很好用的。
在提供的"jquery cookie 实例"中,可能包含了一些示例代码或HTML页面,用于演示如何在实际项目中应用这些操作。通过实践这些示例,你可以更好地理解如何在JavaScript和jQuery中有效地使用Cookie。 总结起来,jQuery...
总结来说,“jquerycookie实例”是关于使用jQuery和相关的Cookie插件来管理浏览器Cookie的实践应用。了解这些基本操作对于进行用户跟踪、个性化体验以及维持会话状态等Web开发任务至关重要。通过熟练掌握这些技术,...
在这个实例中,我们结合了JavaScript和Cookie技术来实现这一功能。 首先,HTML部分定义了一个输入框(`<input id="txt" type="text">`)以及相关的CSS样式来创建下拉菜单的效果。CSS通过`.Menu`和`.Menu2`类设置了...
在这个"cookie实例"中,我们将深入探讨Cookie的工作原理、创建与管理Cookie的方法以及它们在实际应用中的重要性。 1. **Cookie的工作原理** Cookie由服务器在响应HTTP请求时发送到客户端(通常是Web浏览器),然后...
本实例将探讨如何在C#环境下利用Cookie和Session来处理用户登录状态。 首先,我们要理解Cookie和Session的基本概念。Cookie是一种小型文本文件,由服务器发送到用户的浏览器,并存储在本地。每次用户访问同一网站时...
本文将深入探讨“Cookie实例保存账号和密码”的概念,通过两个示例页面`login.jsp`和`bean.jsp`来阐述如何实现这个功能。 首先,我们需要了解Cookie的基本原理。Cookie是由服务器端发送到浏览器的一小段文本信息,...
PHP 5.2 标准课程中级cookie的应用开发实例-3
PHP 5.2 标准课程中级cookie的应用开发实例-2
PHP 5.2 标准课程中级cookie的应用开发实例-1
【WebView应用实例】深入解析 在移动开发领域,WebView是一个重要的组件,它允许开发者在原生应用程序中嵌入网页内容,实现与Web的交互。在Android平台上,WebView是Android SDK的一部分,提供了在本地应用中展示...
这个“Flash AS3 Cookie操作实例源码”压缩包包含了一个具体的示例,教你如何在ActionScript 3(AS3)环境中进行Cookie的操作。 在AS3中,我们没有内置的库来直接处理Cookie,但可以通过使用`flash.net....
**二、Cookie 实例** ```php // 1. 设置cookie setcookie('userID', $encodedUserID, time() + (86400 * 7)); // 设置有效期为7天 // 2. 检查cookie是否存在 if (isset($_COOKIE['userID'])) { // 解码并检查...
通过这个"JAVA100例之实例81Cookie计数器",开发者可以了解Cookie的基本操作,并将其应用于实际项目中。这个实例简单直观,适合初学者理解Cookie的工作原理以及如何在Java Web应用中使用它们。通过不断实践和深入...
通过这些基本操作,开发者可以更好地管理客户端的状态信息,实现更丰富的Web应用功能。需要注意的是,在实际开发过程中,为了提高安全性,通常会限制Cookie的数量和大小,并且合理设置Cookie的过期时间和路径等属性...
本文将深入探讨这些概念,并通过实例来展示它们在实际项目中的应用。 首先,Cookie是服务器发送到用户浏览器并存储的一小块数据,用于跟踪用户信息。在Web应用中,Cookie常用于实现会话持久化,比如保存用户的登录...