[JSP] 9.4 세션 사용하기: session 기본 객체

2022. 4. 11. 19:21JAVA/Servlet&JSP

세션의 기본 개념

  • 세션은 웹 컨테이너에서 정보를 보관할 때 사용
  • 세션은 오직 웹 서버에서만 생성됨
  • 같은 JSP페이지라도 웹 브라우저에 따라서 서로 다른 세션을 사용함

 

1. 세션 생성하기

<%@ page session = "true" %>
  • page 디렉티브의 session 속성의 기본값은 true이므로 위 문장은 생략이 가능함
  • session은 기본 객체이기 때문에 따로 선언을 하지 않아도 됨

 

2. session 기본 객체

메서드 리턴 타입 설명
getId() String 세션의 고유 ID 구함
getCreationTime() long 세션이 생성된 시간을 구함
getLastAccessedTime() long 웹 브라우저가 가장 마지막에 세션에 접근한 시간을 구함

 

3. 세션의 속성 사용

// 속성 설정
session.setAttribute("MEMBERID", "user1");
session.setAttribute("NAME", "김용환");

// 속성 참조
session.getAttribute("MEMBERID");
session.getAttribute("NAME");

 

4. 세션의 종료

session.invalidate();
  • 세션 내의 저장된 모든 속성을 제거함
session.removeAttribute("name");
  • name에 해당하는 속성을 제거함

 

5. 세션의 타임아웃

세션 타임아웃 설정 방법 1

web.xml
<web-app>
	...
    
    <session-config>
         <session-timeout>60</session-timeout>	<!--세션 타임아웃 60분 설정-->
    </session-config>
</web-app>
세션 타임아웃 설정 방법 2
session.setMaxInactiveInterval(60 * 60);	// 1 hour

 

References

source code : https://github.com/yonghwankim-dev/JSP2.0/tree/master/jsp2/src/main/webapp/Chapter09
JSP 2.0 프로그래밍 기초부터 중급까지