본문으로 바로가기


JSP에서 제공을 해주는 내장객체중


1. request 객체

2. session 객체

3. application 객체


들은 각각의 영역(Scope)와 관련된 속성(Attribute)를 가질 수 있다.


여기서 속성은 무엇이며, 영역은 무엇일까?




속성(Attribute) : 공유되는 데이터

영역(Scope) : 속성을 공유할 수 있는 유효범위



위에서 request, session, application 객체들은 영역과 속성을 가질 수 있다고 언급하였다.

그러면 어떠한 속성과 영역을 가지는지 알아보자.



☞ Session



session내장객체는 세션이 유지되고 있는 범위안에서, 즉 session scope안에서

서로 다른 페이지(자원)이라고 할지라도 객체(데이터)들을 공유할 수 있는 속성을 가지고 있으며 이 속성에

내장된 객체(데이터)는 세션이 종료되는 순간에 반환된다.

(다른 브라우저 작업시 휘발) --> 한 브라우저 내에 1개의 session만 생성




☞ Request



request내장객체는 클라이언트(=사용자)의 요청(response)이 처리되는 동안에 속성을 사용할 수 있다.

즉, forward(포워딩) 또는 include방식을 이용하는 경우 여러개의 페이지에서도 요청정보가 계속 유지되므로,

request영역의 속성을 여러 페이지에서 공유할 수가 있다.




☞ Application



웹 어플리케이션이 실행되고 있는 동안 속성을 사용할 수가 있다.

application은 모든이가 공유할 수 있는 데이터이다. --> 가장 큰 영역




☞ Page



page영역은 위의 3가지 영역과는 다르게 page내장객체가 아닌 pageContext내장객체를 통해 접근할 수 있는 영역이다.

pageContext는 모든 영역의 속성에 대한 접근이 가능하다.