태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

language/jsp2008/03/12 14:29

-----------------------------------------------------------------------

아래의 HttpSession 인터페이스의 session 에 대한 질문에 답해보고,

스스로 얼마나 알고 있는지 체크해보자

-----------------------------------------------------------------------

1.세션이란?

 - 본래의 의미는 서버와 클라이언트가 접속되어 있는 상태(State) 를 말한다.


2.Stateless 프로토콜이란?

 - 상태없는 프로토콜을 의미하며 대표적인 예가 Http 프로토콜이다.

   Http프로토콜은 요청과 응답이라는 메커니즘으로 작동하는데,

   이때 서버는 클라이언트의 매번의 요청마다 전혀 새로운 연결로 인식한다.


3.세션 아이디란?

 - 접속하는 다수의 클라이언트를 구분하기 위해, 서버측에서 세션 객체가 생성되는데,

   이때 세션객체와 매칭되는 고유아이디도 같이 만들어지며, 바로 이 아이디에 의해 각각의 클라이언트를 구분할 수 있다.


4.세션객체가 만들어 지는 시점은?

  - 새로운 클라이언트의 요청으로 간주될 경우 생성된다.

    이때 새로운 클라이언트란 세션아이디가 부여되지 않은 경우를 말한다.

    <<새로운 요청으로 간주되는 경우>>

      브라우져를 닫았다가 다시 요청을 시도한 경우

       : 새로운 브라우져로 서버에 요청시 세션 아이디값이 없는 상태이므로 서버는 새로운 클라이언트로 간주한다.

      ⓑ일정 시간동안 아무런 반응이 없어 서버의 세션이 소멸된 경우

      : 세션객체 생성 후 일정시간 동안 요청시도가 없으면 세션객체는 효력을 상실하여 세션은 종료된다.


5.JSP/Servlet에서 세션객체를 얻는 방법은?

  session객체.getAttribute("변수명");


6.getSession(boolean create) 메서드에 대해 설명해보자

  - false : 세션을 새로 생성하지 않고 기존에 존재하는 세션을 리턴받아온다.

              이때 기존에 세션이 존재하지 않을 경우에 null 을 반환한다.

  - true  : 세션을 얻어오되 ,기존에 없을 경우엔 새로 생성하여 리턴 받아온다.


7.컨테이너가 여러 클라이언트를 구분할 수 있는 방법을 설명해보자

  서버에서 만들어진 세션아이디는 response 에 넣어 클라이언트로 다시 보내지며,

 이를 부여받은 클라이언트는 요청시마다 이 세션아이디를 가지고 연결을 시도하므로 서버가 이 값으로 구분할 수 있다.


8.클라이언트가 쿠키를 허용하지 않을 경우의 해결방법을 설명해보자

   URL 인코딩방식을 이용한다.

Posted by THLIFE.net
TAG ,

TRACKBACK http://thlife.net/trackback/632 관련글 쓰기

댓글을 달아 주세요