728x90
반응형
내장 객체
JSP 페이지의 내장 객체란 JSP 가 서블릿으로 변환될 때 컨테이너가 자동으로 생성시키는 서블릿 멤버변수를 말합니다.
즉 서블릿으로 구현 시 자주 사용했던 객체를 서블릿으로 변환 시 컨테이너가 자동으로 생성하여 사용할 수 있게 제공하는 것입니다.( 내장.. 내부에 저장된.. 머 그런거겠죠..? )
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.ServletContext | 컨텍스트 정보를 저장 |
pageContext | javax.servlet.jsp.PageContext | JSP 페이지에 대한 정보를 저장 |
page | java.lang.Object | JSP 페이지의 서블릿 인스턴스를 저장 |
config | javax.servlet.ServletConfig | JSP 페이지에 대한 설정 정보를 저장 |
exception | java.lang.Exception | 예외 발생 시 예외 처리 |
앞에서 많이 본 것들이죠? 기능도 동일한 기능을 제공합니다.
내장 객체 스코프
내장 객체 | 서블릿 | 스코프 |
page | this | 한 번의 요청에 대해 하나의 JSP 페이지를 공유합니다. |
request | HttpServletRequest | 한 번의 요청에 대해 같은 요청을 공유하는 JSP 페이지를 공유합니다. |
session | HttpSession | 같은 브라우저에서 공유합니다. |
application | ServletContext | 같은 애플리케이션에서 공유합니다. |
session 내장 객체 예제
// java
HttpSession session = request.getSession();
session.setAttribute("name", "김철수");
// JSP
<%
String name = (String)session.getAttribute("name");
%>
JSP 는 session 내장 객체에 접근할때 java 와 다르게 자동으로 세션 객체를 생성하므로 getSesstion 을 하여 session 을 얻을 필요가 없습니다.
그럼 application 객체도 자동으로 생성해주겠죠?
application 내장 객체 예제
// set JSP
<%
application.setAttribute("name", "김철수");
%>
// get JSP
<%
String name = application.getAttribute("name");
%>
앞에서 본 것과 마찬가지로 session 은 브라우저 범위이고 application 프로그램 범위이므로 session 은 같은 브라우저 내에서는 동일한 결과를 출력할 것이고 다른 브라우저에서는 결과 값이 없습니다.
application 은 다른 브라우저에서도 값이 출력됩니다.
request 내장 객체 예제
// request1.jsp
...
<%
request.setAttribute("name", "김철수");
%>
...
<%
ReqeustDispatcher dispatch = request.getRequestDispatcher("request2.jsp");
dispatch.forward(request, response);
%>
// request2.jsp
<%
String name = (String)request.getAttribute("name");
%>
...
<%
<h1>호갱님의 이름은 <%=name %> 입니다.</h1>
%>
out 내장 객체 예제
...
<h1><% out.println("호갱님의 이름은 " + name + "입니다."); %></h1>
...
여기까지 임미다.
728x90
'개발 > Java' 카테고리의 다른 글
[JAVA - WEB] JSP 표준 태그 라이브러리(JSTL) - fn (0) | 2022.11.07 |
---|---|
[JAVA - WEB] JSP 표준 태그 라이브러리(JSTL) - fmt (0) | 2022.11.07 |
[JAVA - WEB] JSP 표준 태그 라이브러리(JSTL) - Core (0) | 2022.11.06 |
[JAVA - WEB] JSP 표현 언어(Expression Language) (0) | 2022.11.06 |
[JAVA - WEB] JSP 액션 태그(Action Tag) (0) | 2022.11.06 |
[JAVA - WEB] JSP 스크립트 요소 (0) | 2022.11.06 |
[JAVA - WEB] JSP 정의와 구성 요소 (0) | 2022.11.06 |
[JAVA - WEB] 서블릿 리스너(Listener) (0) | 2022.11.05 |
[JAVA - WEB] 서블릿 필터(Filter) (0) | 2022.11.05 |
[JAVA - WEB] 세션(Session) (1) | 2022.11.03 |