[java][servlet] httpSession 정리

HMS·2022년 8월 10일
0

[Session]

  • 방문자가 웹 서버에 접속해 있는 상태

  • WAS의 메모리에 Object의 형태로 저장

  • 메모리가 허용하는 용량까지 제한없이 저장가능

[동작순서]

  • 클라이언트가 페이지 요청

  • 접근한 클라이언트의 쿠키를 확인하여 해당 session-id를 보냈는지 확인

  • session-id를 생성해 클라이언트에게 돌려줌

  • 서버에서 클라이언트로 돌려준 session-id를 쿠키를 사용해 서버에 저장 (쿠키이름: JSESSIONID)

  • 클라이언트 재 접속시, 이 쿠키를 이용하여 session-id값을 서버에 전달.

[특징]

  • 웹 서버에 상태를 유지하기위한 정보를 저장

  • 웹 서버에 저장되는 쿠키(세션쿠키)

  • 서버에서 세션을 삭제 했을때만 삭제가 되므로, 쿠키보다 비교적 보안이 좋다.

  • 각 클라이언트 고유 sesison id를 부여

[주요 기능]

// 생성
HttpSession session = request.getSession();
HttpSession session = request.getSession(false);

// 값 저장
session.setAttribute(String name, Object value);

// 값 얻기
Object obj = session.getAttribute(String name);

// 값 제거
session.removeAttribute(String name);// 특정 이름의 속성 제거
session.invalidate(); // binding 되어 있는 모든 속성 제거

출처 : https://muengx2.tistory.com/55

profile
안녕하세요

0개의 댓글