JavaWeb同步学习笔记之四十、JavaWeb_Cookie概述

本文深入探讨了JavaWeb中的Cookie机制,详细介绍了Cookie作为会话跟踪的重要手段,包括其工作原理、底层实现机制以及在JavaWeb应用中的具体表示和使用方法。文章还解释了Cookie的生命周期、存储限制及如何在浏览器与服务器间传递。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JavaWeb_Cookie概述

Cookie概述

  • 1 Cookie概述。
     1)完成会话跟踪的一种机制:采用的是在客户端保持HTTP状态信息的方案。
     2)Cookie是在浏览器访问WEB服务器的某个资源时,有WEB服务器在HTTP响应消息头中附带传送给浏览器的一个小文本文件。
     3)一旦WEB浏览器保存了某个Cookie,那么它在以后每次访问该WEB服务器时,都会在HTTP请求头中将这个Cookie回传给WEB服务器。
     4)底层的实现原理: WEB服务器通过在HTTP响应消息中增加Set-Cookie响应头字段将Cookie信息发送给浏览器,浏览器则通过在HTTP请求消息中增加Cookie请求头字段将Cookie回传给WEB服务器。
     5)一个Cookie只能标识一种信息,它至少含有一个标识该信息的名称(NAME)和设置值(VALUE)。
     6)一个WEB站点可以给一个WEB浏览器发送多个Cookie,一个WEB浏览器也可以存储多个WEB站点提供的Cookie。
     7)浏览器一般只允许存放300个Cookie,每个站点最多存放20个Cookie,每个Cookie的大小限制为4KB。
     8)如果不设置过期时间,则表示这个cookie生命周期为浏览器会话期间,只要关闭浏览器窗口,cookie就消失了。这种生命期为浏览器会话期的cookie被称为会话cookie。会话cookie一般不保存在硬盘上而是保存在内存里。
     9)如果设置了过期时间,浏览器就会把cookie保存到硬盘上,关闭后再次打开浏览器,这些cookie依然有效直到超过设定的过期时间。
  • 2.在JavaWeb中如何表示和使用Cookie。
	<%
		//在JavaWeb规范中,使用Cookie类代表cookie
		//1.获取Cookie
		Cookie[] cookies = request.getCookies();
		if(cookies != null && cookies.length > 1){
			for(Cookie cookie: cookies){
				//2.获取Cookie的name和value
				out.print(cookie.getName() + ":" + cookie.getValue());
				out.print("<br>");
				
			}
		}else{
			out.print("没有一个Cookie,正在创建并返回。");
			//1.创建一个Cookie对象
			Cookie cookie = new Cookie("name","xs");
			//setMaxAge():设置Cookie的最大时效,以秒为单位,若为0,表示立即删除该Cookie
			//若为负数,表示不存储该Cookie,若为正数,表示该Cookie的存储时间。
			cookie.setMaxAge(30);
			
			//2.调用response的一个方法把Cookie传给客户端。
			response.addCookie(cookie);
			
		}
	%>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值