Bootstrap

【Cookie 在 Spring Boot 中的实现】

什么是Cookie?

Cookie是一小段文本信息,通常由服务器发送到浏览器,然后由浏览器存储在本地。它包含了一些键值对,用于存储关于用户的信息。浏览器在每次请求同一网站时都会将这些Cookie发送回服务器,从而维护会话状态。Cookie通常用于实现用户身份验证、跟踪用户行为、保存用户偏好设置等。

Spring Boot 中的Cookie实现

1. 创建Spring Boot项目

2. 添加依赖

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
</dependencies>

3. 创建Controller

import org.springframework.web.bind.annotation.CookieValue;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletResponse;

@RestController
@RequestMapping("/cookie")
public class CookieController {

    @GetMapping("/set")
    public String setCookie(HttpServletResponse response) {
        // 创建一个名为 "user" 的Cookie
        Cookie cookie = new Cookie("user", "JohnDoe");
        // 设置Cookie的有效期为一小时
        cookie.setMaxAge(3600);
        // 将Cookie添加到响应中
        response.addCookie(cookie);
        return "Cookie已设置";
    }

    @GetMapping("/get")
    public String getCookie(@CookieValue(value = "user", defaultValue = "Guest") String userName) {
        return "当前用户:" + userName;
    }
}

4. 测试Cookie

  • 访问 /cookie/set,将设置一个名为 “user” 的Cookie。
  • 访问 /cookie/get,将读取并显示 “user” Cookie的值。
;