세션(Session)더 알아보기

jooog·2022년 3월 26일
0

스프링

목록 보기
17/26

📌세션의 생성과정

브라우저 요청 -> 서버에서 세션 객체 생성 -> 세션 객체마다 세션 아이디를 가지고 있고 그 세션 아이디가 담겨있는 쿠키를 만들어서 응답으로 보냄 ->브라우저에 쿠키 저장

📌Controller에서 세션 객체얻기

HttpSession session = request.getSession();
//request에서 session 객체 가져오기

session.setAttribute("id","user");
//session에 key, value 저장하기

📌세션과 관련된 메서드

void setAttribute(String name, Object value) 
// 값(value)을 지정된 속성 이름(name)으로 저장

Object getAttribute(String name) 
// 지정된 이름(name)으로 저장된 속성의 값을 반환

void removeAttribute(String name)
// 지정된 이름(name)의 속성을 삭제

Enumeration getAttributeNames()
// 기본 객체에 저장된 모든 속성의 이름을 반환

String getId()
세션의 ID반환

void invalidate()
세션 객체 제거(저장된 객체도 함께 제거)

void setMaxInactiveInterval(int interval)
지정된 시간()후에 세션을 종료

📌세션 종료방식

수동종료

HttpSession session = request.getSession(); //세션 객체 가져오기
session.invalidate(); //세션을 즉시 종료한다
session.setMaxInactiveInterval(30*60); //30분후 종료(예약)

자동종료

자동종료는 web.xml에 설정한다.

<session-config>
   <session-timeout>30</session-timeout> //분단위
</session-config>  

0개의 댓글