본문 바로가기
도서/프로그래밍

[04] 쉽게 배우는 JSP 웹 프로그래밍

by 신발사야지 2024. 1. 17.

4일차

05 내장객체

내장 객체(implicit object)는 JSP 페이지에서 사용할 수 있도록 JSP 컨테이너에 미리 정의 된 객체로 그 종류가 다양합니다. 별도의 import 문 없이 자유롭게 사용할 수 있습니다.

내장객체 반환유형 설명

request javax.servlet.http.HttpServletRequest 웹 브라우저의 HTTP요청 정보를 저장한다.
response javax.servlet.http.HttpServletResponse 웹 브라우저의 HTTP 요청에 대한 응답 정보를 저장한다
out javax.servlet.jsp.jsp.jspWriter JSP 페이지에 출력할 내용을 담고 있는 출력 스트림
session javax.servlet.http.HttpSession 세션 정보를 저장한다
application javax.servlet.ServletContext 웹 애플리케이션의 콘텍스트 정보를 저장한다.
pageContext javax.servlet.jsp.PageContext JSP 페이지의 정보를 저장한다
page java.lang.Object JSP 페이지를 구현한 자바 클래스로 JSP 페이지 자체를 나타낸다.
config javax.servlet.ServletConfig JSP 페이지의 설정 정보를 저장한다.
exception java.lang.Throwable JSP 페이지의 예외 발생을 처리한

02 request 내장 객체

가장 많이 사용되는 기본 내장 객체

 

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Implicit Objects</title>
</head>
<body>
	<form action="request01_process.jsp", method="post">
		<p> 아이디 : <input type="text" name="id">
		<p> 비밀번호: <input type="text" name="passwd">
		<p> <input type="submit" value="전송"/>
	</form>
</body>
</html>

 

 

 

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Insert title here</title>
</head>
<body>
	<%
		request.setCharacterEncoding("utf-8");
		String userid = request.getParameter("id");
		String password = request.getParameter("passwd");
	%>
	
	<p> 아이디: <%= userid %>
	<p> 비밀번호: <%= password %>
</body>
</html>

 

 

 

 

<%@ page language="java" contentType="text/html; charset=utf-8"
	pageEncoding="utf-8"%>
<%@ page import="java.util.Enumeration"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Insert title here</title>
</head>
<body>
	<%
	Enumeration en = request.getHeaderNames();
	while (en.hasMoreElements()) {
		String headerName = (String) en.nextElement();
		String headerValue = request.getHeader(headerName);
	%>
	<%=headerName%>
	:
	<%=headerValue%><br>
	<%
	}
	%>
</body>
</html>

 

 

 

 

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Implicit Objects</title>
</head>
<body>
	<form action="process.jsp", method="post">
		<p> 아이디 : <input type="text" name="id">
		<p> 비밀번호: <input type="text" name="passwd">
		<p> <input type="submit" value="전송"/>
	</form>
</body>
</html>

 

 

 

 

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Implicit Objects</title>
</head>
<body>
	<p> 클라이언트 IP : <%= request.getRemoteAddr() %></p>
	<p> 요청 정보 길이 : <%= request.getContentLength() %></p>
	<p> 요청 정보 인코딩 : <%= request.getCharacterEncoding() %></p>
	<p> 요청 정보 콘텐츠 유형 : <%= request.getContentType() %></p>
	<p> 요청 정보 프로토콜 : <%= request.getProtocol() %></p>
	<p> 요청 정보 전송방식 : <%= request.getMethod() %></p>
	<p> 요청 URI : <%= request.getRequestURI() %></p>
	<p> 콘텍스트 경로 : <%= request.getContextPath() %></p>
	<p> 서버이름 : <%= request.getServerName() %></p>
	<p> 서버포트 : <%= request.getServerPort() %></p>
	<p> 쿼리문 : <%= request.getQueryString() %></p>
</body>
</html>

 

03 response 내장 객체

 

<%
	response.sendRedirect("<http://www.google.com>");
	response.sendError(404, "요청 페이지를 찾을 수 없습니다.");
	response.setHeader("Cache-control", "use_cache");
%>

 

04 out 내장 객체

 

<%
	out.println("hello");
%>