▶ 내장 객체(Implicit Object)
- 제품에 어떤 기능을 기본으로 내장했다고 함은 내장된 기능이 그 제품에서 핵심적이고 유용하다는 뜻, JSP 내장 객체도 마찬가지임
- 내장 객체는 기본적인 요청(Request)과 응답(Response), 화면 출력 등에 이용
- 내장 객체는 요청과 응답 혹은 HTTP 헤더 등의 정보를 쉽게 다룰 수 있도록 함
▷ 내장 객체 생성과정
- 내장 객체는 JSP 페이지가 실행될 때 컨테이너가 자동으로 생성해줌
- 별도로 선언하거나 객체로 생성하지 않아도 즉시 사용가능
- JSP는 실행될 때 자바 파일인 서블릿으로 변환하여 컴파일됨. 이 변환 과정에서 _jspService()메서드가 생성되는데, 이 메서드 안에 다음과 같은 코드가 삽입
public void _jspService(){
...생략...
final javax.servlet.jsp.PageContext pageContext;
javax.servlet.http.HttpSession session = null;
final javax.servlet.ServletContext application;
... 생략..
}
- 객체를 선언하고 초기화하고 선언문임. 내장 객체의 참조 변수를 컨테이너가 생성하는 부분
▷ 내장 객체 특징
- 컨테이너가 미리 선언해놓은 참조 변수를 이용해 사용
- 별도의 객체 생성 없이 각 내장 객체의 메서드를 사용할 수 있음
- JSP 문서 안의 <% 스크립틀릿 %>과 <%=표현식%>에서만 사용할 수 있음
- <%! 선언부 %>에서는 즉시 사용 불가능하고, 매개변수로 전달받아 사용할 수 있음
▶ 내장 객체의 종류
내장객체 |
타입 |
설명 |
request | javax.servlet.http.HttpServletRequest | 클라이언트의 요청 정보를 저장 |
response | javax.servlet.http.HttpServletResponse | 클라이언트의 요청에 대한 응답 정보를 저장 |
out | javax.servlet.jsp.JspWriter | JSP 페이지에 출력할 내용을 담는 출력 스트림 |
session | javax.servlet.http.HttpSession | 웹 브라우저 정보를 유지하기 위한 세션 정보를 저장 |
application | javax.servlet.ServletContect | 웹 애플리케이션관련 컨텍스트 정보를 저장 |
pageContext | javax.servlet.jsp.PageContext | JSP 페이지에 대한 정보를 저장 |
page | java.lang.Object | JSP 페이지를 구현한 자바 클래스의 인스턴스 |
config | javax.servlet.ServletConfig | JSP 페이지에 대한 설정 정보를 저장 |
exception | java.lang.Throwable | 예외가 발생한 경우에 사용 |
▶ request 객체
- 웹 브라우저(클라이언트)가 전송한 요청 정보를 담고 있는 객체
● 주요 기능
- 클라이언트와 서버에 대한 정보 읽기
- 클라이언트가 전송한 요청 매개변수에 대한 정보 읽기
- 요청 헤더 및 쿠키 정보 읽기
▶ response 객체
- request 내장 객체가 클라이언트의 요청 정보를 저장하는 역할을 했다면, response 내장 객체는 그와 반대로 요청에 대한 응답을 웹 브라우저(클라이언트)에게 보내주는 역할
● 주요 기능
- 페이지 이동을 위한 리다이렉트(redirect)
- HTTP 헤더에 응답 헤더 추가
'[JSP, 서블릿]' 카테고리의 다른 글
[JSP] MVC model (0) | 2023.01.15 |
---|---|
[JSP] 인코딩 방식 지정 (0) | 2023.01.14 |
[JSP] GET요청과 POST 요청 (0) | 2023.01.13 |
[JSP] 서블릿 매핑 (0) | 2023.01.12 |
[JSP] 서블릿 작성하기 (0) | 2023.01.11 |
댓글