- 하나의 'Application'이 생성되고 소멸될 때 까지 계속 유지된다.
- eclipse에서 '하나의 project'가 '하나의 application'이라고 생각하면 되고,
'하나의 server'에는 '여러개의 Web application'이 존재할 수 있다.
- 하나의 웹 브라우저의 정보를 유지하기 위한 세션 정보를 저장한다.
- 부라우저 종료시 종료된다.
- 클라이언트 로그인 정보를 저장할 때 사용한다.
- 내장객체로서 브라우저마다 한 개씩 존재하고, 고유한 sessionID 생성 후 정보를 추출한다.
- session '값 설정'
session.setAttribute("설정한 세션아이디", 세션에 넣을 값);
-------------------------------------------------------------
- session '시간 설정'
session.setMaxInactiveInterval(60*60); // 60분동안 세션 유지.
session.setMaxInactiveInterval(-1); // 세션의 시간을 무한대로 설정.
-------------------------------------------------------------
- session '값 가져오기'
session.getAttribute("설정한 세션아이디");
-------------------------------------------------------------
- session '값 삭제'
session.removeAttribute("설정한 세션아이디");
-------------------------------------------------------------
- session '값 전체 삭제'
session.invalidate();
-> Session과 비교하며 알아보자.
※'쿠키(Cookie)'※
- 저장위치 : 클라이언트(=접속자 PC)
- 저장형식 : text
- 만료시점 : 쿠키 저장시 설정함.
(브라우저가 종료되도, 만료시점이 지나지 않으면 자동 삭제가 되지 않음)
- 용량제한 : 하나의 도메인당 20개.
- 속도 : 세션보다는 빠름.
- 보안 : 세션보다는 좋지 않다.
-------------------------------------------------------------
※'세션(Session)'※
- 저장위치 : 해당 브라우저
- 저장형식 : Object
- 만료시점 : 브라우저 종료시 삭제(기간 지정 가능함.)
- 용량제한 : 서버가 허용하는 한 용량제한 없음.
- 속도 : 쿠키보다 느림.
- 보안 : 쿠키보다 좋다.
※'Application'※
- 사용범위 : 전역 범위에서 사용하는 저장공간.
- 생명주기 : WAS가 시작해서 종료할 때까지.
※'Session'※
- 사용범위 : 세션 범위에서 사용하는 저장공간.
- 생명주기 : 세션이 시작해서 종료할 때까지.
※'Cookie'※
- 사용범위 : WEB브라우저 별 지정한 path범주 공간.
- 생명주기 : 브라우저에서 전달한 시간부터 만료시간까지.