사용자별 정보를 서버에 저장하는 방식
로그인 상태, 장바구니, 사용자 정보 등 유지할 때 사용
항목 | 설명 |
---|---|
저장 위치 | 서버 (메모리) |
유지 범위 | 브라우저 꺼질 때까지 또는 명시적 종료 |
식별 방법 | 클라이언트에 JSESSIONID 쿠키로 추적 |
HttpSession session = req.getSession();
session.setAttribute("userId", "abc123"); // 저장
String id = (String) session.getAttribute("userId"); // 꺼내기
사용자 정보를 클라이언트(브라우저)에 저장
로그인 자동 저장, 다크모드 여부 등 가벼운 정보 보관
항목 | 설명 |
---|---|
저장 위치 | 클라이언트 (브라우저) |
유지 범위 | 설정된 만료 기간까지 |
용량 제한 | 1개당 약 4KB |
Cookie cookie = new Cookie("userId", "abc123");
cookie.setMaxAge(60 * 60 * 24); // 1일
resp.addCookie(cookie); // 클라이언트에 저장
// 꺼내기
Cookie[] cookies = req.getCookies();
요청/응답을 가로채서 전처리 또는 후처리하는 역할
로그인 체크, 인코딩 설정, 로그 기록 등에 사용됨