본문 바로가기
Spring Boot/스프링 부트로 배우는 자바 웹 개발

세션

by 코리늬 2018. 7. 12.

2.4.3 세션(Session)

2.4.3.1 세션의 구성

- 세션은 서버와 클라이언트의 유효한 연결을 식별하는 정보다.

- 서버는 클라이언트가 요청을 보내면 요청을 식별할 수 있는 ID를 부여하는데, 이 ID가 세션ID다.

- 세션 ID는 JSESSIONID란 이름으로 쿠키로 저장되고, 클라이언트가 재접속할 때 해당 쿠키를 이용해 세선ID 값을 서버에 전달한다.

- 서블릿에서는 세션이 HttpSession 인터페이스로 정의되어 있다.


2.4.3.2 세션 생성

- 현재 생성된 세션 정보는 request 객체에서 꺼내서 사용할 수 있다.

HttpSession session = request.getSession()

  • getId : 세션의 고유 아이디를 얻을 수 있음
  • getCreationTime : 세션이 생성된 시간을 얻을 수 있는 메소드
  • getLastAccessTime : 웹 브라우저가 가장 마지막에 세션에 접근한 시간을 얻을 수 있는 메소드
"); HttpSession session = req.getSession(); //세션 객체 생성 out.println("세션아이디 : " + session.getId() + "
"); out.println("세션이 생성된 시간 : " + session.getCreationTime() + "
"); out.println("웹 브라우저가 가장 마지막에 세션에 접근한 시간 : " + session.getLastAccessedTime() + "
"); out.println(""); } }

2.4.3.3 세션에 값 저장 및 삭제

- 세션에 값을 저장하는 방식은 쿠키와 동일하게 이름, 값 형태로 저장할 수 있는데 setArribute 메소드를 사용하면 된다.

session.setAttribute('이름', '값');

세션 예제 "); HttpSession session = req.getSession(); //세션 객체 생성 session.setAttribute("sessionObject", "zzzzaaaannn"); String sessionValue = (String) session.getAttribute("sessionObject"); out.println("생성된 세션 값 : " + sessionValue); out.println(""); } }

책 예제에서는 앞의 쿠키처럼 두개의 서블릿클래스를 사용해서 구현했지만 귀찮은 관계로 그냥 하나에 다 합쳤다.


'Spring Boot > 스프링 부트로 배우는 자바 웹 개발' 카테고리의 다른 글

스프링 MVC  (0) 2018.07.27
스프링 XML 설정  (0) 2018.07.25
필터와 쿠키  (0) 2018.07.12
서블릿 활용  (0) 2018.07.11
서블릿 설정, 서블릿 내부 동작  (0) 2018.07.09

댓글