JSP, Servlet, JDBC 강의 4일차

Jiian·2022년 5월 7일

JSP,Servlet

목록 보기
6/11

해당 게시물은 Udemy의 "JSP, Servlets and JDBC for Beginners" 강의를 정리한 내용입니다. 영어를 한국어로 번역하는 과정에서 잘못된 부분이 있을 수 있습니다.

This post summarizes Udemy's "JSP, Servlets and JDBC for Beginners" lecture.

JSP 세션 객체란?

  • 사용자의 브라우저 세션을 위해 한 번 생성되며, 각각 사용자가 unique 한 세션을 가진다.
  • 사용자의 액션을 계속 따라가야 하는 곳에서 쓰인다. (ex.온라인 뱅킹, 쇼핑 카트, 온라인 시험 등)

전반적인 구조

  • 여러 명의 사용자들이 어플리케이션을 사용하며, 각각 사용자들은 각각의 세션 ID를 가진다.
  • Tomcat 서버가 자동적으로 알아서, 사용자에게 세션 ID를 부여할 것이다.
  • 세션은 데이터베이스이나 파일 시스템이 아닌, 오롯이 메모리에 저장된다.

세션 객체에 데이터 추가할 때

  • 어떠한 타입의 데이터든 세션 객체에 추가할 수 있다.

session.setAttribute(String name, Object value)

<!--리스트를 세션에 추가하고 싶을 때 -->
List<String> items = new ArrayList<>();
session.setAttribute("myToDoList", items);

세션 객체로부터 데이터를 반환받을 때

Object session.getAttribute(String name)

  • myStuff 라는 변수에 대입하기 위해서 객체를 Downcast 한다.
List<String> mystuff = (List<String>) session.getAttribute("myToDoList");

세션의 주요 메소드

메소드설명
isNew() : boolean만약 새로운 세션일 경우 true 리턴
getId() : String세션 ID를 리턴
invalidate() : void세션 객체를 없애고 싶을 때 세션을 무효화하고,
해당 세션과 관련된 모든 객체를 unbind
ex. logout 할 때
setMaxInactiveInterval(long mills) : void세션이 만료되는 idle time을 설정한다.
값은 밀리초 단위로 제공한다.
Tomcat의 비활성 간격은 30분이지만, 서버에 따라 상이하다.
ex. 온라인 뱅킹 시, 은행은 보통 5분으로 설정
profile
Slow and Steady

0개의 댓글