Servlet Cookies
Cookies定义:Cookies是存储在客户端计算机上的文本文件,并保留了用户的各种跟踪信息。
Cookies作用:会话保持,如完成用户的登录与状态保持
Cookies的工作原理:
- 客户端向服务区发起登录请求
- 服务器脚本(代码)向浏览器发送一组Cookies,例如:姓名,年龄等
- 浏览器将这些信息存储在本地计算机上,以备将来使用
- 当下一次浏览器向web服务器发送任何请求时。浏览器会把这些Cookies信息发送到服务器,服务器将使用这些信息来识别账户
Cookies构成
Cookies通常设置在HTTP头信息中,设置Cookie的http请求,会向Servlet发送如下信息
- Set-Cookie头包含了一个名称值对,一个GMT日期,一个路径和一个域,名称和值都会被URL编码
- expires字段是一个命令,告诉浏览器在给定的时间和日期之后过去(“忘记”)该Cookie
- 如果浏览器被配置为存储Cookies,他将会保留此信息知道到期日期
如果用户端的浏览器指向任何匹配该Cookie的路径和域的页面,他会重新发送Cookie到服务器,浏览器的头信息可能会如下:
此时Servlet就能够通过请求方法request.getCookies()访问Cookie,该方法将返回一个Cookie对象的数组
Servlet操作Cookie方法
代码示例:
如果想要了解IDEA配置Tomcat运行Servlet项目,可点击
IDEA配置Tomcat运行servlet详解
具体步骤,创建两个后端类,分别为:
- 设置cookie信息
- 获取cookie信息
设置cookie信息代码
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
public class SetCookieServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//1.创建Cookie对象
//首先需要一个cookie对象,这里我们需要两个cookie对象,一个来存储用户名(username——java),一个来存储密码(pwd——javas)
Cookie username = new Cookie("uesrname","java");
Cookie pwd = new Cookie("pwd","javas&