JSP에서 Request와 Response, PageContext, Session의 관계
JSP(JavaServer Pages)에서는 웹 애플리케이션을 개발할 때 요청(Request)과 응답(Response)을 처리하기 위해 다양한 객체를 사용합니다. 이 객체들은 서로 다른 용도와 범위(Scope)를 가지며, 웹 애플리케이션에서 데이터를 전달하고 공유하는 데에 중요한 역할을 합니다.
1. Request 객체
HttpServletRequest 인터페이스를 구현한 객체입니다. 웹 브라우저에서 서버로 요청이 전달될 때 생성되며, 해당 요청에 대한 정보를 담고 있습니다.
주요 메서드: getParameter(), getAttribute(), setAttribute(), getRequestDispatcher() 등
<%
String username = request.getParameter("username");
request.setAttribute("message", "Welcome, " + username + "!");
%>
2. Response 객체
HttpServletResponse 인터페이스를 구현한 객체입니다. 서버에서 웹 브라우저로 응답을 보낼 때 사용되며, 응답에 대한 정보를 담고 있습니다.
주요 메서드: setContentType(), getWriter(), sendRedirect() 등
<%
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html><head><title>Response Example</title></head><body>");
out.println("<h1>" + request.getAttribute("message") + "</h1>");
out.println("</body></html>");
%>
3. PageContext 객체
JSP 페이지에서 사용되는 객체로, request와 response 객체를 포함합니다. JSP 페이지에서 다른 객체를 사용하려면 해당 객체를 PageContext 객체에 등록해야 합니다.
주요 메서드: getPage(), getRequest(), getResponse(), getServletContext() 등
<%
PageContext pageContext = request.getAttribute("pageContext");
ServletContext servletContext = pageContext.getServletContext();
%>
4. Session 객체
HttpSession 인터페이스를 구현한 객체입니다. 웹 브라우저에서 최초 요청이 전달될 때 생성되며, 해당 브라우저와 서버 간의 세션을 유지합니다.
주요 메서드: setAttribute(), getAttribute(), removeAttribute(), invalidate() 등
<%
HttpSession session = request.getSession();
session.setAttribute("username", username)
%>
'JSP > JSP 기본 개념' 카테고리의 다른 글
spring framework 와 jsp 작동방식의 차이 (0) | 2023.04.06 |
---|---|
[JSP에서 웹사이의 JSP파일의 변환과정] - 서브렛,컴파일,요청,응답 (0) | 2023.04.05 |
지시자(Directive), 선언자(Declaration), 스크립트릿(Scriptlet), 표현식(Expression) (0) | 2023.04.03 |
JSP - VO, DAO, DTO란? (0) | 2023.03.29 |
JSP - 리다이렉트 (0) | 2023.02.22 |