package com.hailu; import javax.servlet.http.Cookie; import java.io.IOException; /** * cookie:用来处理客户端发送不同请求的时候如何使用相同的参数信息 * cookie的使用 * Cookie cookie = new Cookie("00001","beijing"); * response.addCookie(cookie); * 设置cookie的参数 * cookie.setMaxAge( int seconds) * cookie.setPath(String url) * 获取cookie对象 * Cookie[] cookies = request.getCookies() * * 特点: * 1、cookie是保存在浏览器端的数据名称 * 2、cookie分类:临时cookie,默认是存储在内存中的,所以当浏览器关闭的时候,cookie自动失效 * 持久化cookie,保存在浏览器的某个存储目录,当时间过期之后,才会失效 * 3、每一个cookie对象中保存一个key-value键值对的数据,想要存储多个k-v数据,需要创建多个Cookie对象 * */ public class CookieServlet extends javax.servlet.http.HttpServlet { protected void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException { this.doGet(request,response); } protected void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException { request.setCharacterEncoding("utf-8"); response.setCharacterEncoding("gbk"); //创建Cookie对象 Cookie cookie = new Cookie("00001","beijing"); Cookie cookie1 = new Cookie("0002","shanghai"); //给cookie对象添加时间有效期,单位是s cookie.setMaxAge(3*24*3600); //给cookie设置固定路径值 cookie1.setPath("/cookie/abc"); //将cookie设置到response对象中 response.addCookie(cookie); response.addCookie(cookie1); response.getWriter().write("学习cookie"); } }