JavaWeb之Cookie的简单使用!!!

什么是Cookie

Cookie:客户端会话技术,将数据保存到客户端,以后每次请求都携带Cookie数据进行访问

Cookie 数据存放在浏览器端(客户端)

创建Cookie

1.创建Cookie

Cookie cookie = new Cookie("key","value");

2.使用response响应Cookie给客户端(浏览器)

response.addCookie(cookie);

java 复制代码
/*
 * Copyright (c) 2020, 2023,  All rights reserved.
 *
 */
package cn;

import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.Cookie;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;

import java.io.IOException;
import java.lang.annotation.Retention;

/**
 * <p>Project: scl-cookie - AddCookie</p>
 * <p>Powered by scl On 2023-09-04 16:36:59</p>
 * <p>描述:<p>
 *
 * @author 孙臣龙 [1846080280@qq.com]
 * @version 1.0
 * @since 17
 */
@WebServlet("/addCookie")
public class AddCookie extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //创建Cookie
        Cookie cookie = new Cookie("meite","scl");
        //设置存活时间
        cookie.setMaxAge(60);
        //添加Cookie
        resp.addCookie(cookie);
    }
}

3.获取Cookie

Cookie\[\] cookies = request.getCookies();

for(Cookie str : cookies){

System.out.println(str.getName()+str.getValue());

}

java 复制代码
/*
 * Copyright (c) 2020, 2023,  All rights reserved.
 *
 */
package cn;

import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.Cookie;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;

import java.io.IOException;

/**
 * <p>Project: scl-cookie - GetCookie</p>
 * <p>Powered by scl On 2023-09-04 16:43:04</p>
 * <p>描述:<p>
 *
 * @author 孙臣龙 [1846080280@qq.com]
 * @version 1.0
 * @since 17
 */
@WebServlet("/getCookie")
public class GetCookie extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //获取Cookie
        Cookie[] cookies = req.getCookies();
        for(Cookie  str : cookies){
            System.out.println(str.getName()+str.getValue());
        }
    }
}

Cookie过期时间

setMaxAge(int seconds):设置Cookie存活时间

1.正数:将Cookie写入浏览器所在的电脑硬盘,持久化存储,到期自动删除

2.负数:默认值,Cookie存储在浏览器内存中,当浏览器关闭,内存释放,则Cookie被销毁。

3.零:删除对应Cookie

java 复制代码
 //创建Cookie
        Cookie cookie = new Cookie("meite","scl");
        //设置存活时间
        cookie.setMaxAge(60);
        //添加Cookie
        resp.addCookie(cookie);
相关推荐
Revolution6138 分钟前
React 组件重新渲染时,到底重新执行了什么
前端·react.js·面试
名字还没想好☜42 分钟前
Go 的 time.After 在 select 循环里内存泄漏:定时器堆积原理与 timer.Reset 正确姿势
java·数据库·golang·go·goroutine
圆山猫1 小时前
[Virtualization](三):RISC-V H-extension 与 Guest 执行模式
android·java·risc-v
caishenzhibiao1 小时前
期货先行者主图 同花顺期货通指标
java·c语言·c#
史呆芬2 小时前
分布式事务实战:微服务跨服务数据一致性解决方案
java·后端·spring cloud
IT界的老黄牛2 小时前
限流命中后该怎么办:直接丢、阻塞等待、延迟重投三种姿势的取舍
java·rocketmq·redisson·令牌桶·削峰·分布式限流
用户2181697049302 小时前
Flutter(四)Dart语法 空安全 运算符 流程控制
前端
许彰午2 小时前
政务督办的分合模式:主办协办的并发审批
前端·javascript·政务
用户69371750013842 小时前
AI时代,程序员该往哪走?
前端·后端
ttwuai2 小时前
GoFrame 后台日志清空失败:无 WHERE 删除为什么被拦住
前端·golang