세션(Session)
세션은 서버 측에서 사용자별로 고유하게 상태 정보를 저장하는 방식이다.
사용자가 웹 애플리케이션에 접속하면 서버는 고유한 세션 ID를 생성하고 이를 사용하여 해당 사용자의 상태 정보를 관리한다.
세션은 상태 정보가 서버에 저장되기 때문에 보안이 상대적으로 높으며, 일정 시간이 지나면 만료된다. 또 세션 클라이언트는 세션 ID를 쿠키나 URL 파라미터로 서버에 전송한다.
세션은 로그인 상태 유지, 장바구니 정보 저장 등 사용자 별로 유지해야 할 정보를 저장할 때 사용된다.
쿠키(Cookie)
쿠키는 사용자 브라우저에 저장되는 작은 데이터 조각이다.
서버가 HTTP 응답의 일부로 쿠키를 보내고, 클라이언트는 이후 요청 시, 이 쿠키를 포함시켜 서버로 전송한다.
쿠키는 클라이언트(브라우저)에 저장되고 유효 기간이 있다.
쿠키는 사용자 추적, 로그인 상태 유지, 사용자 설정 저장 등 클라이언트 측에서 관리할 필요가 있는 정보를 저장할 때 사용된다.
세션과 쿠키를 정리하자면 다음과 같다.
특징 | 세션(Session) | 쿠키(Cookie) |
저장 위치 | 서버 | 클라이언트(브라우저) |
보안 | 높음 | 낮 |
유효 시간 | 설정에 따라 다름 | |
저장 데이터 크기 | 서버 용량에 따라 다름 | 각 쿠키당 4KB 제한 |
사용 용도 | 로그인 상태, 사용자 상태 정보 등 | 사용자 설정, 사용자 추적 등 |
정리하자면, 세션은 보안지 중요한 사용자 상태 정보를 저장하는 데 적합하다.
쿠키는 클라이언트 측에서 관리할 데이터에 유용하다.
'Spring Boot(스프링 부트)' 카테고리의 다른 글
자바 기초 문법 및 웹 이해 (10) | 2024.11.05 |
---|---|
Spring Boot(스프링 부트) > 회원 서비스 개발 2 - 전 포스팅에 이어서... (4) | 2024.05.28 |
Spring Boot(스프링 부트) > 백엔드 개발(회원 관리 예제) (5) | 2024.05.28 |
Spring Boot(스프링 부트) > 스프링 웹 개발(정적 컨텐츠, MVC와 템플릿 엔진, API) (4) | 2024.05.20 |
Spring Boot(스프링 부트) > 간단한 View 환경설정과 빌드하고 실행하 (4) | 2024.05.16 |