概念
Cookie:客户端会话技术,将数据保存到客户端,以后每次请求都携带Cookie数据进行访问。
Cookie的工作流程:
服务端提供了两个Servlet,分别是ServletA和ServletB 浏览器向服务器发送HTTP请求1,服务端ServletA接收请求并进行业务处理 服务端ServletA在处理的过程中可以创建一个Cookie对象并将数据存入Cookie中 服务端ServletA在响应数据的时候,会把Cookie对象响应给浏览器 浏览器接收到响应数据,会把Cookie对象中的数据存储在浏览器内存中,此时浏览器和服务端就建立了一次会话 在同一次会话中,浏览器再次发送HTTP请求2给服务端ServletB,浏览器会携带Cookie对象中的所有数据 ServletB接收到请求和数据后,就可以获取到存储在Cookie对象中的数据,这样同一个会话中的多次请求之间就实现了数据共享
Cookie的基本使用:
发送Cookie
//创建Cookie对象,并设置数据
Cookie cookie = new Cookie("key","value");
//发送Cookie到客户端:使用response对象
response.addCookie(cookie);
获取Cookie
//获取客户端携带的所有Cookie,使用request对象
Cookie[] cookies = request.getCookies();
//遍历数组,获取每一个Cookie对象:for
//使用Cookie对象方法获取数据
cookie.getName();
cookie.getValue();
Cookie的存活时间:
默认情况下,Cookie存储在浏览器内存中,当浏览器关闭,内存释放,则Cookie被销毁。
如何将Cookie持久化存储?
Cookie已经提供好了对应的API来完成这件事,这个API就是setMaxAge
设置Cookie存活时间 setMaxAge(int seconds) 参数值为: 1.正数:将Cookie写入浏览器所在电脑的硬盘,持久化存储。到时间自动删除 2.负数:默认值,Cookie在当前浏览器内存中,当浏览器关闭,则Cookie被销毁 3.零:删除对应Cookie
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。