연습 문제
세션(session. 내장 객체. session scope. 하나의 세션은 하나의 웹 브라우저에 매핑 됨. 기본 유효시간은 30분. 제거 시 invalidate() 메소드 사용)은 클라이언트(웹 브라우저)와 웹 서버(톰켓) 간의 상태(로그인 정보, setAttribute() 메소드로 관리하는 정보) 를 지속적으로 유지(30분이 기본. session.maxInactiveInterval() 메소드로 초단위로 관리 가능)하는 방법을 말합니다. 세션은
웹 서버에서만 접근이 가능(웹 서버에 저장이 됨)하므로 보안 유지에 유리하며 데이터를 저장하는 데 한계가 없습니다. 세션은 오직 웹 서버에 존재하는 객체로 웹 브라우저마다 하나씩 존재하므로 웹서버의 서비스를 제공받는 사용자를 구분하는 단위가 됩니다.
jsp에서는 session 내장 객체를 바로 사용할 수 있으나, java단 에서는 HttpServletRequest request를 통해서 request.getSession(); 구문으로 생성이 가능 HttpSession session = request.getSession();
세션 생성은 session 내장 객체의 setAttribute() 메소드를 사용
세션 사용은 session 내장객체의 getAttribute() 메소드를 사용
세션에 저장된 하나의 세션 속성 이름을 삭제하려면 removeAttribute() 메소드를 사용
세션에 저장된 모든 세션 속성 이름을 삭제하려면 invalidate() 메소드를 사용
세션에 저장된 하나의 세션 속성 이름에 대한 속성 값을 얻어오려면 getAttribute() 메소드를 사용
세션에 저장된 여러 개의 세션 속성 이름에 대한 속성 값을 얻어오려면 getAttributeNames() 메소드를 사용
필수(mandatory) : required, not null. 이름, 비밀번호, ID, 주민번호, 학번 등등
선택(optional) : null, 필수 항목을 제외한 나머지 항목