Cookie学习笔记一:基本概念

      作为一名JavaWeb学习的菜鸟,我今天通过网上的视频教程,自己学习了一下Cookie。之前一直有听到别人讨论什么Cookie啊session啊,感觉特高科,今天终于找到学习资源啦~在此将我的学习成果贴出,如果有任何建议,欢迎来喷哦~害羞共同学习,共同进步啊~~(在此就不说是哪家的视频了,以免有打广告的嫌疑,如果有兴趣,可以私信我哦~)

好了,言归正传,一起就是我今天的学习成果啦:

Cookie的基本概念:

Cookie是Servlet里的一种用来会话跟踪的机制,简单直白的说就是比如当你网购时要将淘到的宝贝放入购物车吧,那怎么保证是加入的你的购物车呢,这里就是用Cookie来记录的;或者当你登录某个网站时,该网站一般会询问你是否记住密码,如果你选择是,那接下来一天或几天的时间你都可以实现自动登录,而这也是用的Cookie技术。

在不进行设置的情况下,Cookie的生命周期一般就是一次会话(就是你下一次访问这个网站他将可以直接登录)。而若是想要控制它的生命周期也是非常简单的,只用改变一个参数:setMaxAge既可。setMaxAge是用秒为单位的,当其为负数时就是不对Cookie存储,为0时就是立即删除,若为正数就是到时间自动删除啦。可能现在有点晕啦,概念就是这样,比较纠结,下面我用一段代码来帮助一下理解啦~

一个Cookie的测试文件:

<span style="font-size:18px;"><%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" session="false"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Cookie Test</title>
</head>
<body>
	<%
		//Cookie的查看方式为遍历
		Cookie [] cookies = request.getCookies();
	
		if(cookies != null && cookies.length > 0)
		{
			for(Cookie c : cookies)
			{
				out.println(c.getName() +" : "+ c.getValue());
			}
		}else
		{
			out.println("Cookies 为空,正在创建中。。。。");
			//创建一个Cookie对象
			Cookie cookie = new Cookie("name", "CookieTest");
		
			//设置Cookie的最大保存时间,Cookie会在下次启动30秒后自动删除
			cookie.setMaxAge(30);
			
			//把Cookie传给客户端
			response.addCookie(cookie);
		}
	%>
</body>
</html></span>

我们可以从浏览器中的开发者工具中查看到如下:

第一次访问



第二次访问



当第一次访问时,响应头部有set-Cookie,而第二次访问时请求头部直接自动将Cookie的信息带入了请求,而这也就是Cookie的工作原理啦~因为设置了最大保存时间,所以30s后再刷新Cookie 就被删除了~~

至此,Cookie的基本概念就差不多讲完了~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值