JSP 기본 객체의 속성(Attribute) 사용하기
네 개의 기본 객체 pageContext, request, session, application은 속성을 갖는다. 각 기본 객체가 존재하는 동안 기본 객체의 속성을 사용할 수 있다. 속성은 JSP 페이지 사이에서 정보를 주고받거나 공유하기 위한 목적으로 사용된다.
속성은 <name, value>의 형태를 갖는다. 네 개의 기본 객체는 서로 다른 이름을 갖는 속성을 여러 개 포함할 수 있다. pageContext, request, session, application 기본 객체들은 아래의 메서드를 사용해서 속성을 추가하고, 속성의 값을 변경하고, 속성을 삭제한다.
속성 처리 메서드
메서드 |
리턴 타입 |
설명 |
setAttribute(String name, Object value) |
void |
이름이 name인 속성의 값을 value로 지정한다. |
getAttribute(String name) |
Object |
이름이 name인 속성의 값을 구한다. 지정한 이름의 속성이 존재하지 않으면 null을 리턴한다. |
removeAttribute(String name) |
void |
이름이 name인 속성을 삭제한다. |
getAttributeNames() |
Enumeration |
속성의 이름 목록을 구한다. |
(*pageContext 기본 객체는 getAttribute() 메서드를 제공하지 않는다.)
속성의 활용
기본 객체 |
영역 |
쓰임새 |
pageContext |
PAGE |
(한 번의 요청을 처리하는) 하나의 JSP페이지 내에서 공유할 값을 저장 한다. 주로 커스텀 태그에서 새로운 변수를 추가할 때 사용한다. |
request |
REQUEST |
한 번의 요청을 처리하는 데 사용되는 모든 JSP 페이지에서 공유할 값을 저장한다. 주로 하나의 요청을 처리하는 데 사용하는 JSP 페이지 사이에서 정보를 전달하기 위해 사용된다. |
session |
SESSION |
한 사용자와 관련된 정보를 JSP 사이에 공유하기 위해 사용한다. 사용자의 로그인 정보와 같은 것들을 저장한다. |
application |
APPLICATION |
모든 사용자를 위해 공유할 정보를 저장한다. 임시 폴더 경로와 같이 웹 어플리케이션 설정 정보를 주로 저장한다. |