본문 바로가기
반응형

Servlet18

Servlet HttpServletRequest 상태정보 공유(요청 재지정 Redirection) HttpServletRequest 이번 절에서 HttpServletRequest 객체를 사용하여 여러 페이지 간에 정보를 공유하는 방법을 학습하겠습니다. HttpServletRequest 객체에 여러 페이지에서 공유할 정보를 저장한다 하더라도 service() 메소드가 종료되는 시점에 HttpServletRequest 객체도 소멸할 텐데 그곳에 정보를 저장하는 의미가 있을까요? HttpServletRequest 객체는 하나의 서블릿 페이지가 실행되는 동안에만 메모리에 존재하는 개체이기 때문에 HttpServletRequest를 통해 정보를 유지하는 것은 무의미하다고 생각할 겁니다. 그런데 아직 학습하지 않은 내용 중에 클라이언트가 서블릿 실행 요청을 했을 때 하나의 페이지만 실행되는 것이 아니라 여러 페.. 2021. 3. 12.
Servlet 세션(Session)으로 상태정보 유지하기 세션(Session) HTTP 기반으로 동작하는 클라이언트가 서버에 정보를 요청할 때 생성되는 "상태정보"를 세션이라고 합니다. 세션은 HttpSession이라는 인터페이스 객체로 표현되며, HttpSession 객체는 HttpServletRequest의 getSession()이나 getSession(true) 메소드를 이용하여 생성할 수 있습니다. HttpSession 객체가 생성될 때는 요청을 보내온 클라이언트 정보, 요청 시간 정보 등을 조합한 세션 ID가 부여되며, 이 세션 ID는 클라이언트 측에 쿠키 기술로 저장됩니다. HttpSession 객체는 서버에 생성되며, 클라이언트에는 세션 ID가 쿠키 기술로 저장되어 각 클라이언트에 대해 생성되는 HttpSession 객체를 클라이언트마다 개별적으로.. 2021. 3. 12.
Servlet 쿠키(Cookie)로 상태정보 유지하기 쿠키(Cookie) 웹 서비스 중에는 클라이언트 단위로 상태정보를 유지해야 하는 상황이 많습니다. 클라이언트 단위로 상태정보를 유지하게 하려면 쿠키와 세션을 이용합니다. 쿠키와 세션은 다음과 같은 기준에 따라 선택하여 사용합니다. 상태정보의 유지 기간이 브라우저가 종료될 때까지인가의 여부 유지하려는 정보의 저장 위치(서버, 클라이언트) 유지하려는 정보가 공개되어도 되는지의 여부 쿠키와 세션의 차이점 구분 쿠키 세션 저장 위치 클라이언트 서버 저장 데이터 타입 텍스트 객체 저장 데이터 크기 제한 있음 서버에서 수용할 수 있는 만큼 쿠키 속성 쿠키란, 서버가 클라이언트에 저장하는 정보로서 클라이언트 쪽에 필요한 정보를 저장해놓고 필요할 때 추출하는 것을 지원하는 기술입니다. 클라이언트와의 연결이 끊어져도 클.. 2021. 3. 12.
ServletContext로 웹 애플리케이션 단위 정보 공유하기 ServletContext 웹 애플리케이션 단위로 정보를 서버 쪽에 유지할 수 있는 방법은 ServletContext 객체를 사용하는 것입니다. 이번 절에서는 ServletContext의 기본 개념과 주요 메소드에 대해 알아보겠습니다. ServletContext 생성 ServletContext는 서블릿 컨테이너와 통신하기 위해서 사용되는 메소드를 지원하는 인터페이스입니다. 다음 그림과 같이 서블릿 컨테이너가 시작될 때 웹서버에 등록된 웹 애플리케이션 단위로 하나의 ServletContext 객체가 자동으로 생성됩니다. 그리고 웹 애플리케이션 서비스가 중지될 때 소멸합니다. 즉, ServletContext 객체는 웹 애플리케이션과 생명주기(life cycle)가 같습니다. ServletContext 객체를.. 2021. 3. 12.
반응형