728x90
728x90
# 관련 포스팅
- 세션 개념 : https://young0105.tistory.com/160
- JSP 세션 사용법 : https://young0105.tistory.com/163
세션 (Session)
- 내장형 서버의 메모리 기반 세션을 사용함
→ 세션 데이터가 서버의 메모리에 저장됨
→ 서버를 재시작하면 세션 데이터가 모두 삭제됨
→ 방안 : 세션 클러스터링, 분산 캐시
(세션 데이터를 외부 저장소에 저장함)
# Controller에서 session 객체 가져오기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | @Controller @RequestMapping("/account") public class AccountController { @Autowired private HttpSession session; @GetMapping("/list") public String list(Model model) { // 인증 검사 User principal = (User) session.getAttribute(Define.PRINCIPAL); if (principal == null) { throw new UnAuthorizedException("인증된 사용자가 아닙니다.", HttpStatus.UNAUTHORIZED); // 인증되지 않음 (401) } ... } | cs |
세션 관련 설정
- application.properties 또는 application.yml 파일에서 설정
# 세션 타임아웃 설정 (기본값 : 30분)
- 세션 유효시간
- 페이지를 이동할 때마다 시간이 초기화됨
- server.servlet.session.timeout=시간
# 세션 쿠키 이름 설정 (기본값 : JSESSIONID)
- server.servlet.session.cookie.name=이름
# 세션 쿠키 경로 설정 (기본값 : /)
- server.servlet.session.cookie.path=경로
320x100
반응형
'Java > Spring Boot' 카테고리의 다른 글
[Spring Boot] Gradle 빌드 라이브러리 의존성 추가 (0) | 2023.04.14 |
---|---|
[Spring Boot] 인터셉터 구현 예시 (0) | 2023.04.13 |
[Spring Boot] 인터셉터 (Interceptor) ★ (0) | 2023.04.13 |
[Spring Boot] 필터 (Filter) (0) | 2023.04.12 |
[Spring Boot] JSP 템플릿 엔진 연결하기 (0) | 2023.04.12 |