기본적으로 웹에서 클라이언트와 서버가 통신할 때는 HTTP 프로토콜을 이용하여 통신을 한다.
HTTP 프로토콜의 대표적인 특성 중의 하나는 상태가 유지되지 않는다는 것이다. 즉, 클라이언트가 서버로 요청을 한 번 하고 서버가 요청에 대한 응답을 하면, 요청한 클라이언트와 응답을 한 서버의 관계는 소멸된다. 즉, 상태가 유지되지 않는다. 따라서, 이런 단점을 보강하기 위해 즉, 클라이언트와 서버의 관계를 유지하기 위해 제공되는 기능이 세션이다.
세션은 클라이언트의 정보가 서버 컨테이너에 저장되는 기능이고, 쿠키는 클라이언트의 정보가 클라이언트에 저장되는 기능이다.
세션(Session)
세션이란 서버 측의 컨테이너에서 관리되는 정보이다. 세션의 정보는 컨테이너에 접속해서 종료되기까지 유지되며, 접속 시간에 제한을 두어 일정 시간 응답이 없다면 정보는 더 이상 유지되지 않게 설정이 가능하다. 이것은 정보가 서버 측에서 저장된다는 면에서 보안적으로 유리하다.
session 객체의 메서드
메소드 | 설명 |
setAttribute(String attrName,Object attrValue) | 세션 영역에 속성을 생성한다. |
removeAttribute(String attrName) | 파라미터로 지정된 이름의 속성을 제거한다. |
getAttribute(String attrName) | 지정된 이름의 속성 값을 반환한다. |
getId() | 클라이언트의 세션 ID 값을 반환한다. |
setMaxInactiveInterval(int seconds) | 세션의 유지 시간을 설정한다. |
getMaxInactiveInterval() | 세션의 유지 시간을 반환한다. |
invalidate() | 현재의 세션을 정보들을 모두 제거한다. |
'코딩 > jsp' 카테고리의 다른 글
커넥션 풀(사용법)-Oracle 기준 (0) | 2020.04.07 |
---|---|
쿠키(cookie) (0) | 2020.03.16 |