티스토리 뷰

JSP 기본객체

JSP는 9개의 기본 객체를 제공하고 있습니다.

기본객체

실제 타입 

설명

request 

javax.servlet.http.HttpServletRequest

클라이언트의 요청 정보를 저장한다.

response

javax.servlet.http.HttpServletResponse

응답 정보를 저장한다. 

pageContext

javax.servlet.jsp.PageContext 

JSP 페이지에 대한 정보를 저장한다.

session

javax.servlet.http.HttpSession

HTTP 세션 정보를 저장한다. 

config

javax.servlet.ServletConfig 

JSP 페이지에 대한 설정 정보를 저장한다.

out

 javax.servlet.jsp.JspWriter

JSP 페이지가 생성하는 결과를 출력할 때 사용하는 출력 스트림

page

java.lang.Object 

JSP 페이지를 구현한 자바 클래스 인스턴스

 exception

java.lang.Throwable 

에러 페이지에만 사용한다

application

javax.servletServletContext

웹 애플리케이션에 대한 정보를 저장한다.

 

JSP 내에서 선언하지 않고 사용할 수 있는 변수가 있는데 그러한 변수들을 내장변수(implicit variable)라고 합니다..

이러한 내장변수는 웹 컨테이너가 JSP를 서블릿 클래스로 변환할 때 자동으로 선언해 주기 때문에 선언하지 않고 사용할 수 있습니다.

 

exception 객체를 제외한 8개 기본 객체는 모든 JSP 페이지에 사용할 수 있습니다. exception 객체는 오직 에러 페이지에서만 사용할 수 있습니다.

 

out 기본객체

JSP가 생성하는 모든 내용은 out 기본 객체를 통해서 전송됩니다. 

<% out.println("<html>") %>
<% out.println("<header>") %>
<% out.println("</header>") %>
<% out.println("</html>") %>

 

사실 out 객체를 사용해서 직접 출력할 일은 많지 않습니다. 하지만 <% %> 스크립틀릿 안에서 출력할 값이 있을경우 사용하면 유용합니다.

 

<% if(score > 10) { %>
<%= scoreA %>
<% } else if(score > 5) { %>
<%= scoreB %>
<% } %>

<%
	if(score > 10) {
    	out.println(scoreA);
    } else if(score > 5) {
    	out.println(scoreB);
    }
%>

 

지원 메서드

  • print() : 데이터를 출력한다.
  • println() : 데이터를 출력하고 줄바꿈한다.
  • newLine() : 줄바꿈을 출력한다.

out이 page 지시자에서 사용한 buffer를 직접 사용하기 때문에 밀접한 관계가 있습니다. out 에서 buffer에 대한 정보를 얻을 수 있는 메서드를 제공합니다.

 

getBufferSize() int 버퍼의 크기를 구한다.
getRemaining() int 현재 버퍼의 남은 크기를 구한다
clear() void 버퍼의 내용을 비운다. 만약 버퍼를 이미 플러시했다면 IOException을 발생한다.
clearBuffer() void 버퍼의 내용을 비운다. clear() 메서드와 달리 버퍼를 플러시한 경우에도 IOException을 발생하지 않는다.
flush() void 버퍼를 플러시한다. 즉 클라이언트에게 버퍼의 내용을 전송한다.
isAutoFlush() boolean 버퍼가 다 찼을 때 자동으로 플러시 할 경우 true를 반환한다.

 

pageContext 기본객체

getRequest() ServletRequest request 기본 객체를 구한다
getResponse() ServletResponse response 기본 객체를 구한다
getSession() HttpSession session 기본 객체를 구한다
getServletContext() ServletContext application 기본 객체를 구한다
getServletConfig() ServletConfig config 기본 객체를 구한다
getOut() JspWriter out 기본 객체를 구한다
getException() Exception exception 기본 객체를 구한다
getPage() Object page 기본 객체를 구한다

 

Exception 객체는 에러페이지에서만 의미가 있습니다.

getRequest, getResponse가 반환하는 객체는 실제로는 HttpServletRequest, HttpServletResponse 입니다.

 

application 기본객체

application은 웹 어플리케이션 전반에 걸쳐 사용되는 정보를 담고있습니다. application은 초기 설정 정보를 읽어올 수 있으며, 서버, 웹 어플리케이션이 제공하는 자원을 읽어올 수 있습니다.

 

웹 어플리케이션이 사용할 수 있는 초기 파라미터는 web.xml에 context-param 태그를 이용하여 추가합니다.

 

초기 파라미터 읽어오기

getInitParameter(String name) String 이름이 name인 웹 어플리케이션 초기화 파라미터 값을 읽어온다. 존재하지 않으면 null을 리턴한다.
getInitParameterNames() Enumeration<String> 웹 어플리케이션 초기화 파라미터 이름 목록을 리턴한다.

 

서버 정보 읽어오기

getServerInfo() String 서버 정보를 구한다
getMajorVersion() String 서버가 지원하는 서블릿 규약의 메이저 버전을 리턴한다(서버의 정수부분)
getMinorVersion() String 서버가 지원하는 서블릿 마이너 버전을 리턴한다 (서버의 소수부분)

 

로그 메시지 기록하기

log(String msg) void msg를 로그로 남긴다
log(String msg, Throwable throwable) void msg를 로그로 남긴다. 익셉션 정보도 함께 로그에 기록한다.

 

자원 접근 메서드

getRealPath(String path) String 지정한 경로에 해당하는 자원의 시스템상에서의 경로를 리턴한다
getResource(String path) java.net.URL 자원에 접근할 수 있는 URL 경로를 리턴한다
getResourceAsStream(String path) java.io.InputStream 해당 자원으로부터 데이터를 읽어얼 수 있는 InputStream을 리턴한다

'JSP &Servlet' 카테고리의 다른 글

JSP tomcat 에서 GET방식 URI 인코딩 처리  (0) 2021.04.24
JSP request 기본객체  (0) 2021.04.24
페이지 모듈화와 요청 흐름 제어  (0) 2018.08.04
지시자(Directive) 디렉티브  (0) 2018.08.01
스크립틀릿(scriptlet)  (0) 2018.08.01
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함