[JSP] JSP 영역 객체 (application, session, request, pageContext)

 

📌영역 객체란?

 


JSP에서 제공하는 내장 객체들 중 pageContext, request, session, application 객체들은  해당 객체에 정의된 유효 범위 안에서 필요한 객체(데이터)들을 저장하고 읽어 들임으로써 서로 공유할 수 있는 특정한 영역을 가지고 있다. 

예를 들어 session 객체의 속성으로 지정된 객체는 세션이 유지되는 한 서로 다른 JSP 페이지라 할지라도 공유해서 사용하는 것이 가능하다. 그렇게 때문에 이들 4가지 내장 객체를 따로 영역 객체라고도 부른다. 

 

공유되는 데이터를 속성(Attribute)이라고 하며 속성을 공유할 수 있는 유효 범위를 영역(Scope)이라고 한다.

  • application 객체
    application 객체는 해당 웹 어플리케이션이 실행되고 있는 동안에 속성을 사용할 수 있다.
    (서버를 종료하면 application 영역 소멸)


  • session 내장 객체
    session 내장 객체는 session이 유지되고 있는 범위 안에서 서로 다른 페이지라 할지라도 객체(데이터)들을 공유할 수 있는 속성을 가질 수 있고 이 속성에 저장된 객체(데이터)는 세션이 종료되는 순간에 반환된다.
    (하나의 브라우저(클라이언트)에 1개의 세션이 생성되므로 같은 웹브라우저 내에서 실행되는 페이지들이 속성을 공유할 수 있다.)
    (브라우저 창을 닫으면 session 영역 소멸)


  • request 객체
    request 객체는 클라이언트의 요청이 처리되는 동안에 속성을 사용할 수 있다.
    포워딩 또는 include를 이용하는 경우 여러 개의 페이지에서도 요청 정보가 계속 유지되므로 request 영역의 속성을 여러 페이지에서 공유할 수 있다.


  • pageContext 객체
    page 객체는 오직 하나의 페이지 내에서만 유효성을 갖는 영역으로 주의해야 할 점은 page 내장 객체가 아닌 pageContext 내장 객체를 통해 접근할 수 있는 영역이다.
    (서블릿 인스턴스의 _jspServicer() 메서드가 실행되는 동안에만 유효)


 

이처럼 해당 영역에서 속성을 사용할 수 있는 내장 객체들을 영역 객체라고 부른다. 

 

 

 

https://yeo-computerclass.tistory.com/226

 

데이터 보관소(네 가지 객체 보관소)

📌데이터 보관소 서블릿 기술은 데이터를 공유하기 위한 방안으로 네 가지 종류의 데이터 보관소를 제공한다. 각각의 데이터 보관소는 공유 범위를 기준으로 구분된다. 1.ServletContext 보관소 웹

yeo-computerclass.tistory.com