본문 바로가기

DEVELOPMENT/JSP

[JSP] 내장 객체

내장 객체

 

클라이언트가 서버로 요청을 보내면, 서버는 그에 맞는 결과를 응답으로 돌려주는 형태로 동작한다.

이 때 JSP의 내장 객체는 요청과 응답 혹은 HTTP 헤더 등의 정보를 쉽게 다룰 수 있도록 해준다.

내장 객체는 JSP 페이지가 실행될 때 컨테이너가 자동으로 생성해주며, 별도로 선언하거나 객체로 생성하지 않아도 즉시 사용할 수 있다. 

 

*내장 객체의 종류

내장 객체 설명
request 클라이언트의 요청을 받거나 웹 브라우저에 대한 정보 혹은 요청 헤더에 대한 정보를 읽을 때 사용한다.
response 요청에 대한 응답을 웹 브라우저로 보낼 때 사용한다. 페이지 이동이나 응답 헤더를 추가할 때도 사용한다.
out 변수 등의 값을 웹 브라우저에 출력할 때 주로 사용한다.
session 웹 브라우저 정보를 유지하기 위한 세션 정보를 저장한다.
application 웹 애플리케이션을 구성하는 모든 JSP에서 접근 가능한 객체로, 웹 애플리케이션에 대한 설정값을 저장할 때 주로 사용한다.
pageContext JSP 페이지에 대한 정보를 저정한다.
page JSP 페이지를 구현한 자바 클래스의 인스턴스이다.
config JSP 페이지에 대한 설정 정보를 저장한다.
exception 예외 처리를 위해 사용한다.

 

 

내장 객체 영역

 

내장 객체 중 4개는 영역이라는 개념을 가지고 있다. 각 영역에 저장된 데이터는 공유 범위가 서로 다르다. 

내장 객체의 영역은 각 객체가 저장되는 메모리의 유효기간이라 이해하면 된다. 

 

웹에서는 페이지(page)들이 모여 하나의 요청(request)을 처리하며, 요청들이 모여 하나의 세션(session)을, 다시 세션들이 모여 하나의 웹 애플리케이션(application)을 이룬다. 

 

 

*내장 객체 범위의 크기 : application > session > request > page

page 영역 동일한 페이지에서만 공유된다. 페이지를 벗어나면 소멸된다.
request 영역 하나의 요청에 의해 호출된 페이지와 포워드(요청 전달)된 페이지까지 공유된다.
session 영역 클라이언트가 처음 접속한 후 웹 브라우저를 닫을 때까지 공유된다.
application 영역 한번 저장되면 웹 애플리케이션이 종료될 때까지 유지된다.

 

 

내장 객체의 속성(Attribute)

 

네 개의 기본객체 page, request, session, application 는 속성을 갖고 있다.
속성은 각각의 기본 객체가 존재하는 동안에 사용될 수 있고, JSP 페이지 사이에서 정보를 주고 받거나 공유하기 위한 목적으로 사용된다.
<속성이름, 값> 형태를 가지고, 서로 다른 이름을 가진 속성을 여러개 포함할 수 있다.

 

*내장 객체의 주요 메소드

메소드 설명 반환타입
setAttribute(String name, Object value) 각 영역에 속성을 저장한다. 모든 타입의 객체를 저장할 수 있다. void
getAttribute(String name) 영역에 저장된 속성값을 얻어온다. Object로 자동 형변환되어 저장되므로 원래 타입으로 형변환 후 사용해야 한다. Object
removeAttribute(String name) 영역에 저장된 속성을 삭제한다. void

 

 

 

 

 

'DEVELOPMENT > JSP' 카테고리의 다른 글

[JSP] Cookie, Session  (0) 2023.03.05
[JSP] Forward, Redirect  (0) 2023.03.05
[JSP] DTO, 자바빈즈, DAO  (0) 2023.03.05
[JSP] 지시어, 스크립트 요소  (0) 2023.03.05
[JSP] 기본 용어 정리  (0) 2023.03.05