Server

[Session] Spring Boot에서의 세션 관리

Raconer 2024. 2. 28. 00:39
728x90

세션관리를 위한 서버의 역할

  • 세션 생성 :  요청이 들어 왔을때 세션이 없다면 만들어서 응답에 set-cookie로 넘겨줌
  • 세션 이용 : 요청이 들어왔을때 세션이 있다면 해당 세션의 데이터를 가져옴
  • 세션 삭제: 타임아웃이나 명시적인 로그아웃 API를 통해 세션을 무효화함
모든 요청에 대해서 Cookie를 파싱해 확인하고, 세션 생성 시에는 set-cookie 값가지 설정해야

 

위 동작을 쉽게 해주는 Spring Boot 도구

- HttpSession

  • 세션을 손쉽게 생성하고 관리할 수 있게 해주는 인터페이스
  • UUID로 세션 ID를 생성
  • JSESSIONID라는 이름의 Cookie를 설정하여 내려줌

ex)

@GetMapping("/hello")
public String hello(HttpSession session){
	session.setAttribute("user", "user1");
    session.getAttribute("user");
    session.removeAttribute("user");
    
    return "hello";
}
728x90

'Server' 카테고리의 다른 글

[Redis] Pub/Sub  (0) 2024.03.01
[Caching] 캐싱의 원리 와 목적  (0) 2024.02.29
Session 이란?  (0) 2024.02.24
동시성 제어  (0) 2024.02.18
[낙관적락/Optimistic Lock]_기본 개념 (비관적 락/PESSIMISTIC 짧은 설명 포함)  (0) 2024.02.15