내장 객체(implicit object)
- JSP 페이지에서 사용할 수 있도록 JSP 컨테이너에 미리 정의된 객체
- JSP 페이지가 서블릿 프로그램으로 번역될 때 JSP 컨테이너가 자동으로 내장 객체를 멤버 변수, 메소드 매개변수 등의 각종 참조 변수(객체)로 포함
- JSP 페이지에 별도의 import문 없이 자유롭게 사용 가능
- scriptlet tag에 선언을 하거나 객체를 생성하지 않고도 직접 호출하여 사용 가능
- scriptlet tag 에서만 사용
<%
// scriptlet tag에서는
System.out.println("HttpServletRequest request 내장객체" + request);
System.out.println("HttpServletResponse response 내장객체" + response);
System.out.println("HttpSession session 내장객체" + session);
System.out.println("ServletContext application 내장객체" + application);
System.out.println("ServletConfig config 내장객체" + config);
System.out.println("PrinterWriter out 내장객체" + out);
%>
- jsp가 java로 변환될 때 _jspService 메서드 내에서 항상 내장변수를 미리 선언해둔다.
따라서 사용자는 내장변수를 선언없이 사용할 수 있다.
public void _jspService(final javax.servlet.http.HttpServletRequest request, final javax.servlet.http.HttpServletResponse response) {
final javax.servlet.jsp.PageContext pageContext;
javax.servlet.http.HttpSession session = null;
final javax.servlet.ServletContext application;
final javax.servlet.ServletConfig config;
javax.servlet.jsp.JspWriter out = null;
final java.lang.Object page = this;
javax.servlet.jsp.JspWriter _jspx_out = null;
javax.servlet.jsp.PageContext _jspx_page_context = null;
- <%@ page session="false" %> 로 지정하면 내장변수 session을 사용하지 못한다.
- <%@ isErrorPage="true" %> 지정하면 예외처리할 수 있는 exception 내장변수가 추가된다.
'Programming Language > JSP' 카테고리의 다른 글
게시판 구축 프로젝트(3) - 글 자세히 보기 (0) | 2023.08.18 |
---|---|
게시판 구축 프로젝트(2) - 글쓰기 (0) | 2023.08.18 |
게시판 구축 프로젝트 (0) | 2023.08.17 |
JSP tag (0) | 2023.08.17 |
JSP (0) | 2023.08.17 |