11/22 48-8 [JSP] 내장 객체의 영역/속성 정리
들어가기 전에 우선 내장 객체들간의 영역에 대해서 살펴보자..
이거도 페이지를 이동하기 때문에 생기는 속성이랄까..??
[내장 객체의 영역]
*Page 영역 : pageContext객체를 가짐. 한 번의 클라이언트 요청에 대하여 하나의 JSP 페이지가 호출되며,
이 때 단 한 개의 page개체만이 대응이 된다.
*Request 영역 : reuest개체를 가짐. 클라이언트의 요청에 대해 같은 요청을 공유하는 페이지가 대응된다.
요청한 jsp페이지가 다른 jsp를 <jsp:include>하거나 <jsp:forward>하는 경우
이 두 페이지는 같은 요청 범위에 속하게 되어 같은 request 객체를 공유하게 된다.
웹 브라우저가 요청을 할 때마다 새로운 request객체가 생성됨.
*session 영역 : session객체를 가짐. 같은 웹브라우저 내에서 요청되는 페이지들은 같은 session객체들을 공유하게 됨
*application 영역 : application객체를 가짐. 웹 어플리케이션당 1개의 application 객체가 생성됨. 같은 웹 어플리케이션에서 요청되는 페이지들은 같은 application객체를 공유함.
[영역이 유지되는 시간]
page(제일짧음) < request < session < apllication영역 순!
***[각 영역에 저장된 속성의 소멸시기]***
page영역 : page를 벗어 날 때
request영역 : 서버에서 요청에 대해 응답이 완료될 때
session영역 : session종료 시 (객체:브라우저 1개당 session 1개다 ! 요렇게만 우선 알아두기... )
application영역 : 서버 종료 시 (객체:웹 어플리케이션 1개당 1개)
[내장객체 속성]
저 객체들의 속성은 JSP페이지 사이에서 정보를 주고 받거나 공유하기 위한 목적으로 사용된다.
setAttribute(String name,Object value): : 속성 추가, name이라는 이름의 속성에 value값 지정
Object getAttribute(String name): 속성 값 얻기 ,name이라는 이름을 가진 속성의 값을 리턴
removeAttribute(String name) : 속성 삭제하기
java.uti.Enumeration getAttributeNames() : 속성의 이름 목록 구하기 , 단 pageContext객체는 이게 없음