โถ ๋ด์ฅ ๊ฐ์ฒด
์น ์ปจํ ์ด๋๊ฐ ์ ๊ณตํ๋ ๊ณ ์ ๋ ์ด๋ฆ์ ๊ฐ์ฒด๋ฅผ JSP ๋ด์ฅ ๊ฐ์ฒด(Implicit Object)๋ผ๊ณ ๋ถ๋ฅธ๋ค.
๋ด์ฅ ๊ฐ์ฒด ๋ณ์๋ช |
ํด๋์ค/์ธํฐํ์ด์ค ํ์ |
์ค๋ช |
request |
javax.servlet. ServletRequest(javax.servlet.http.HttpServletRequest) |
ํด๋ผ์ด์ธํธ์ HTTP ์์ฒญ ์ ๋ณด๋ฅผ ์ ์ฅํ ๊ฐ์ฒด(HTTP ํค๋ ์ ๋ณด, ํ๋ผ๋ฏธํฐ ๋ฑ) |
response |
javax.servlet. ServletResponse(javax.servlet.http.HttpServletResponse) |
HTTP ์์ฒญ์ ๋ํ ์๋ต ์ ๋ณด๋ฅผ ์ ์ฅํ ๊ฐ์ฒด |
session |
javax.servlet.http.HttpSession |
ํด๋ผ์ด์ธํธ์ ์ธ์ ์ ๋ณด๋ฅผ ์ ์ฅํ ๊ฐ์ฒด |
pageContext |
javax.servlet.jsp.PageContext |
ํ์ด์ง ์คํ์ ํ์ํ ์ปจํ ์คํธ ์ ๋ณด๋ฅผ ์ ์ฅํ ๊ฐ์ฒด |
out |
javax.servlet.jsp.JspWriter |
์๋ต ํ์ด์ง ์ ์ก์ ์ํ ์ถ๋ ฅ ์คํธ๋ฆผ ๊ฐ์ฒด |
application |
javax.servlet.ServletContext |
๋์ผํ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ปจํ ์คํธ ์ ๋ณด๋ฅผ ์ ์ฅํ ๊ฐ์ฒด |
config |
javax.servlet.ServletConfig |
ํด๋น ํ์ด์ง์ ์๋ธ๋ฆฟ ์ค์ ์ ๋ณด(์ด๊ธฐํ ์ ๋ณด)๋ฅผ ์ ์ฅํ ๊ฐ์ฒด |
page |
java.lang.Object(javax.servlet.jsp.HttpJspPage) |
ํด๋น ํ์ด์ง ์๋ธ๋ฆฟ ๊ฐ์ฒด(์ธ์คํด์ค) |
exception |
java.lang.Throwable |
์์ธ ์ฒ๋ฆฌ๋ฅผ ์ํ ๊ฐ์ฒด |
โโ
โ
โถ request ๊ฐ์ฒด
JSP ํ์ด์ง์์๋ HttpServletRequest ๊ฐ์ฒด๋ฅผ request๋ ์ด๋ฆ์ ๊ฐ์ฒด๋ก ์ฌ์ฉํ๋ค.
๋ฆฌํด ํ์ |
๋ฉ์๋๋ช |
์ค๋ช |
String |
getParameter (String name) |
name์ด๋ ์ด๋ฆ์ผ๋ก ์ง์ ๋ ํ๋ผ๋ฏธํฐ์ ํ ๋น๋ ๊ฐ์ ๋ฆฌํดํ๋ค. ์ง์ ๋ ์ด๋ฆ์ ํ๋ผ๋ฏธํฐ๊ฐ ์์ผ๋ฉด null์ ๋ฆฌํดํ๋ค. |
String[ ] |
getParameterValues (String name) |
name์ด๋ ์ด๋ฆ์ผ๋ก ์ง์ ๋ ํ๋ผ๋ฏธํฐ์ ๋ชจ๋ ๊ฐ์ String ๋ฐฐ์ด๋ก ๋ฆฌํดํ๋ค. ํ๋์ ์ด๋ฆ์ผ๋ก ์ฌ๋ฌ ๊ฐ์ ๊ฐ์ ๊ฐ์ง ์ ์๋ checkbox์ ๊ฐ์ ํ๊ทธ๋ฅผ ์ฌ์ฉํ์ ๋์ ์ฃผ๋ก ์ฌ์ฉ๋๋ฉฐ ํ๋์ ์ด๋ฆ์ ํ๋์ ๊ฐ๋ง ๊ฐ์ง๋ ํ๋ผ๋ฏธํฐ๋ getParameter(String name) ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข๋ค. |
Enumeration |
getParameterNames( ) |
์์ฒญ์ ํฌํจ๋ ๋ชจ๋ ํ๋ผ๋ฏธํฐ ์ด๋ฆ์ java.util.Enumeration ๊ฐ์ฒด๋ก ๋ฆฌํดํ๋ค. |
โ
โ
requestTest1_Form.jsp (์คํ ํ์ด์ง)
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Request Test</title>
<style>
h1, #commandCell {
text-align: center;
}
table {
margin: auto;
width: 400px;
border: 1px solid red;
}
</style>
</head>
<body>
<h1>Request ์์ ์
๋๋ค.</h1>
<form action="requestTest1.jsp" method="post">
<table>
<tr>
<td><label for="name">์ด๋ฆ</label></td>
<td><input type="text" name="name" id="name"></td>
</tr>
<tr>
<td><label for="gender">์ฑ๋ณ</label></td>
<td>๋จ<input type="radio" name="gender" value="male" id="gender">
์ฌ<input type="radio" name="gender" value="female"></td>
</tr>
<tr>
<td><label for="hobby">์ทจ๋ฏธ</label></td>
<td>๋
์<input type="checkbox" name="hobby" value="๋
์" id="hobby">
๊ฒ์ <input type="checkbox" name="hobby" value="๊ฒ์">
TV์์ฒญ <input type="checkbox" name="hobby" value="TV์์ฒญ">
์ถ๊ตฌ <input type="checkbox" name="hobby" value="์ถ๊ตฌ">
๊ธฐํ <input type="checkbox" name="hobby" value="๊ธฐํ">
</td>
</tr>
<tr>
<td colspan="2" id="commandCell"><input type="submit" value="์ ์ก"></td>
</tr>
</table>
</form>
</body>
</html>
requestTest1.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%request.setCharacterEncoding("UTF-8"); %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Request Test</title>
<style>
h1 {
text-align: center;
}
table {
margin: auto;
width: 400px;
border: 1px solid red;
}
</style>
</head>
<body>
<h1>Request ์์ ์
๋๋ค.</h1>
<table>
<tr>
<td>์ด๋ฆ</td>
<td><%=request.getParameter("name") %></td>
</tr>
<tr>
<td>์ฑ๋ณ</td>
<td>
<%if(request.getParameter("gender").equals("male")) {%>๋จ์
<% } else {%>์ฌ์<%} %>
<%//=request.getParameter("gender").equals("male") ? "๋จ์" : "์ฌ์" %>
</td>
</tr>
<tr>
<td>์ทจ๋ฏธ</td>
<td>
<%
String[] hobby=request.getParameterValues("hobby");
for(int i = 0; i < hobby.length; i++) {
%>
<%=hobby[i] %>
<%} %>
</td>
</tr>
</table>
</body>
</html>
์ด๋ ๊ฒ ์ผํญ ์ฐ์ฐ์๋ก ๋ง๋ค์ด๋๋จ!
<%=request.getParameter("gender").equals("male") ? "๋จ์" : "์ฌ์" %>
<์คํ ๊ฒฐ๊ณผ>
โ
โโ
โ
์ฌํ ) ์ด๋ฆ์ ์ ๋ ฅํ์ง ์์์๋ ๋ฉ์ธ์ง๊ฐ ๋จ๊ฒ ํ๋ ค๋ฉด?
โ
โ
requestTest1_Form.jsp (์คํ ํ์ด์ง)
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Request Test</title>
<style>
h1, #commandCell {
text-align: center;
}
table {
margin: auto;
width: 400px;
border: 1px solid red;
}
</style>
<script>
function checkName() {
if(document.f.name.value.trim() == '') {
alert('์ด๋ฆ์ ์
๋ ฅํ์ธ์.');
document.f.name.focus(); // focus()๋ฅผ ์ค์ ํด์ฃผ๋ฉด ์๋์ผ๋ก ์ด๋ฆ ์์น์ ํฌ์ปค์ค๊ฐ ๊ฐ๋ค.
return false;
}
document.f.submit();
}
function checkName1(f1) { // ๊ฐ์ฒด ์ด๋ฆ์ ์ง์ ํด์ฃผ๋ฉด document๋ฅผ ์ฌ์ฉํ์ง ์์๋ ๋์ด์ ํธํ๋ค.
if(f1.name.value == '') {
alert('์ด๋ฆ์ ์
๋ ฅํ์ธ์.');
f1.name.focus();
return false;
}
f1.submit();
}
</script>
</head>
<body>
<h1>Request ์์ ์
๋๋ค.</h1>
<form action="requestTest1.jsp" method="post" name="f" onsubmit="return checkName();">
<table>
<tr>
<td><label for="name">์ด๋ฆ</label></td>
<td><input type="text" name="name" id="name"></td>
</tr>
<tr>
<td><label for="gender">์ฑ๋ณ</label></td>
<td>๋จ<input type="radio" name="gender" value="male" id="gender">
์ฌ<input type="radio" name="gender" value="female"></td>
</tr>
<tr>
<td><label for="hobby">์ทจ๋ฏธ</label></td>
<td>๋
์<input type="checkbox" name="hobby" value="๋
์" id="hobby">
๊ฒ์ <input type="checkbox" name="hobby" value="๊ฒ์">
TV์์ฒญ <input type="checkbox" name="hobby" value="TV์์ฒญ">
์ถ๊ตฌ <input type="checkbox" name="hobby" value="์ถ๊ตฌ">
๊ธฐํ <input type="checkbox" name="hobby" value="๊ธฐํ">
</td>
</tr>
<tr>
<td colspan="2" id="commandCell"><input type="submit" value="์ ์ก"></td>
</tr>
</table>
</form>
</body>
</html>
โ ์ฃผ์โ
์ทจ๋ฏธ ์ฒดํฌ๋ฐ์ค์ ์๋ฌด๊ฒ๋ ์ฒดํฌ๋ฅผ ํ์ง ์์ผ๋ฉด ์๋ฌ๊ฐ ๋ฌ๋ค.
โ
โ
์ด๋ด๋๋
<tr>
<td>์ทจ๋ฏธ</td>
<td>
<%
String[] hobby=request.getParameterValues("hobby");
if(hobby!=null)
for(int i = 0; i < hobby.length; i++) {
%>
<%=hobby[i] %>
<%} %>
</td>
</tr>
์ด ์กฐ๊ฑด๋ฌธ์ ๋ฃ์ด์ค๋ค.
requestTest1.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%request.setCharacterEncoding("UTF-8"); %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Request Test</title>
<style>
h1 {
text-align: center;
}
table {
margin: auto;
width: 400px;
border: 1px solid red;
}
</style>
</head>
<body>
<h1>Request ์์ ์
๋๋ค.</h1>
<table>
<tr>
<td>์ด๋ฆ</td>
<td><%=request.getParameter("name") %></td>
</tr>
<tr>
<td>์ฑ๋ณ</td>
<td>
<%if(request.getParameter("gender").equals("male")) {%>๋จ์
<% } else {%>์ฌ์<%} %>
<%//=request.getParameter("gender").equals("male") ? "๋จ์" : "์ฌ์" %>
</td>
</tr>
<tr>
<td>์ทจ๋ฏธ</td>
<td>
<%
String[] hobby=request.getParameterValues("hobby");
if(hobby!=null)
for(int i = 0; i < hobby.length; i++) {
%>
<%=hobby[i] %>
<%} %>
</td>
</tr>
</table>
</body>
</html>
<์คํ ๊ฒฐ๊ณผ>
โ
โโ
โ
โถ HTTP ํค๋ ์ ๋ณด์ ๊ด๋ จ๋ ๋ฉ์๋๋ค
๋ฆฌํด ํ์ |
๋ฉ์๋๋ช |
์ค๋ช |
String |
getHeader (String headerName) |
HTTP ์์ฒญ ํค๋์ headerName์ผ๋ก ์ง์ ๋ ์ด๋ฆ์ผ๋ก ํ ๋น๋ ๊ฐ์ ๋ฆฌํดํ๋ค. headerName์ผ๋ก ์ง์ ๋ ์ด๋ฆ์ด ์์ ๊ฒฝ์ฐ null์ ๋ฆฌํดํ๋ค. |
Enumeration |
getHeaders (String headerName) |
headerName์ผ๋ก ์ง์ ๋ ์ด๋ฆ์ผ๋ก ํ ๋น๋ ๋ชจ๋ ๊ฐ์ java.util.Enumeration ๊ฐ์ฒด๋ก ๋ฆฌํดํ๋ค. |
Enumeration |
getHeaderNames( ) |
HTTP ์์ฒญ ํค๋์ ํฌํจ๋ ๋ชจ๋ ํค๋ ์ด๋ฆ์ java.util.Enumeration ๊ฐ์ฒด๋ก ๋ฆฌํดํ๋ค. |
int |
getIntHeader (String headerName) |
headerName ํค๋์ ๊ฐ์ int ํ์ ์ผ๋ก ๋ฆฌํดํ๋ค. ์ง์ ๋ ํค๋๊ฐ์ int๋ก ๋ณํํ ์ ์์ ๊ฒฝ์ฐ์๋ NumberFormatException์ด ๋ฐ์ํ๊ณ headerName ํค๋๊ฐ ์์ ๊ฒฝ์ฐ์๋ -1์ ๋ฆฌํดํ๋ค. |
โโ
โ
requestTest2.jsp
<%@ 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>Request Test2</title>
<style>
h1 {
text-align: center;
}
table {
margin: auto;
width: 400px;
border: 1px solid red;
}
</style>
</head>
<body>
<h1>ํค๋์ ๋ณด ์์ </h1>
<table>
<tr>
<td>ํค๋์ด๋ฆ</td>
<td>ํค๋๊ฐ</td>
</tr>
<%
Enumeration e = request.getHeaderNames();
while(e.hasMoreElements()) {
String headerName = (String)e.nextElement();
%>
<tr>
<td><%=headerName %></td>
<td><%=request.getHeader(headerName) %></td>
<%} %>
</table>
</body>
</html>
<์คํ ๊ฒฐ๊ณผ>
โ
โ
โ
โถ ์ฟ ํค, URL/URI, ์์ฒญ ๋ฐฉ์๊ณผ ๊ด๋ จ๋ ๋ฉ์๋๋ค
๋ฆฌํด ํ์ |
๋ฉ์๋๋ช |
์ค๋ช |
Cookie[ ] |
getCookies( ) |
HTTP ์์ฒญ ๋ฉ์ธ์ง์ ํค๋์ ํฌํจ๋ ์ฟ ํค๋ฅผ javax.servlet.http.Cookie ๋ฐฐ์ด๋ก ๋ฆฌํดํ๋ค. |
String |
getServerName( ) |
์๋ฒ์ ๋๋ฉ์ธ๋ช ์ ๋ฌธ์์ด๋ก ๋ฆฌํดํ๋ค. |
int |
getServerPort( ) |
์๋ฒ์ ํฌํธ ๋ฒํธ๋ฅผ intํ์ผ๋ก ๋ฆฌํดํ๋ค. |
StringBuffer |
getRequestURL( ) |
์์ฒญ URL์ StringBuffer๋ก ๋ฆฌํดํ๋ค. |
String |
getRequestURI( ) |
์์ฒญ URI๋ฅผ ๋ฌธ์์ด๋ก ๋ฆฌํดํ๋ค. |
String |
getQueryString( ) |
์์ฒญ์ ์ฌ์ฉ๋ ์ฟผ๋ฆฌ ๋ฌธ์ฅ์ ๋ฌธ์์ด๋ก ๋ฆฌํดํ๋ค. |
String |
getRemoteHost( ) |
ํด๋ผ์ด์ธํธ ํธ์คํธ ์ด๋ฆ์ ๋ฌธ์์ด๋ก ๋ฆฌํดํ๋ค. |
String |
getRemoteAddr( ) |
ํด๋ผ์ด์ธํธ์ IP ์ฃผ์๋ฅผ ๋ฌธ์์ด๋ก ๋ฆฌํดํ๋ค. |
String |
getProtocol( ) |
์์ฒญ์ ์ฌ์ฉ๋ ํ๋กํ ์ฝ ์ด๋ฆ์ ๋ฌธ์์ด๋ก ๋ฆฌํดํ๋ค. |
String |
getMethod( ) |
์์ฒญ์ ์ฌ์ฉ๋ ์์ฒญ ๋ฐฉ์(GET, POST ๋ฑ)์ ๋ฌธ์์ด๋ก ๋ฆฌํดํ๋ค. |
String |
getContextPath( ) |
ํด๋น JSP ํ์ด์ง์ ์ปจํ ์คํธ ๊ฒฝ๋ก๋ฅผ ๋ฌธ์์ด๋ก ๋ฆฌํดํ๋ค. |
โ
โโ
requestTest3.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Request Test3</title>
<style>
h1 {
text-align: center;
}
table {
margin: auto;
width: 600px;
border: 1px solid red;
}
</style>
</head>
<body>
<h1>์ฟ ํค, URL/URI, ์์ฒญ ๋ฐฉ์์ ๊ด๋ จ๋ ์ ๋ณด ์์ </h1>
<table border="1">
<tr>
<td>์ฟ ํค ์ ๋ณด</td>
<%
Cookie[] cookie=request.getCookies();
if(cookie == null) {
%>
<td>์ฟ ํค๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค</td>
<%
} else {
for(int i = 0; i < cookie.length; i++) {
%>
<td><%=cookie[i].getName() %>(<%=cookie[i].getValue() %>) </td>
<%
}
}
%>
</tr>
<tr>
<td>์๋ฒ ๋๋ฉ์ธ๋ช
</td>
<td><%=request.getServerName() %></td>
<tr>
<td>์๋ฒ ํฌํธ๋ฒํธ</td>
<td><%=request.getServerPort() %></td>
<tr>
<td>์์ฒญ URL</td>
<td><%=request.getRequestURL() %></td>
<tr>
<td>์์ฒญ URI</td>
<td><%=request.getRequestURI() %></td>
<tr>
<td>์์ฒญ ์ฟผ๋ฆฌ</td>
<td><%=request.getQueryString() %></td>
<tr>
<td>ํด๋ผ์ด์ธํธ ํธ์คํธ๋ช
</td>
<td><%=request.getRemoteHost() %></td>
<tr>
<td>ํด๋ผ์ด์ธํธ IP ์ฃผ์</td>
<td><%=request.getRemoteAddr() %></td>
<tr>
<td>ํ๋กํ ์ฝ</td>
<td><%=request.getProtocol() %></td>
<tr>
<td>์์ฒญ ๋ฐฉ์</td>
<td><%=request.getMethod() %></td>
<tr>
<td>์ปจํ
์คํธ ๊ฒฝ๋ก</td>
<td><%=request.getContextPath() %></td>
</table>
</body>
</html>
<์คํ ๊ฒฐ๊ณผ>
โ
โ
โ
โถ response ๊ฐ์ฒด
ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ๋ํ HTTP ์๋ต(HTTP Response)์ ๋ํ๋ด๋ ๊ฐ์ฒด
๋ฆฌํด ํ์ |
๋ฉ์๋๋ช |
์ค๋ช |
์์ |
setHeader (String headerName, String headerValue) |
์๋ต์ ํฌํจ๋ ํค๋ ์ ๋ณด์ headerName์ ์ด๋ฆ์ผ๋ก headerValue ๊ฐ์ ์ค์ ํด ์ถ๊ฐํ๋ค. |
์์ |
addCookie(Cookie cookie) |
javax.servlet.http.Cookie ํ์ ์ ์ฟ ํค ๊ฐ์ฒด๋ฅผ ์๋ต ํค๋์ ์ถ๊ฐํ๋ค. ์ฟ ํค์ ๋ํด์๋ Chapter8์์ ์์ธํ ๋ค๋ฃฌ๋ค. |
์์ |
sendRedirect(String url) |
์ง์ ๋ URL๋ก ์์ฒญ์ ์ฌ์ ์กํ๋ค. |
์์ |
setContentType(String type) |
์๋ต ํ์ด์ง์ contentType์ ์ค์ ํ๋ค. |
โ
โ
responseTest1.jsp (์คํ ํ์ด์ง)
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
response.sendRedirect("responseTest2.jsp");
%>
responseTest2.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Response Test</title>
</head>
<body>
<h1>
ํ์ฌ ํ์ด์ง๋ responseTest1.jsp์ ์ํด<br>
๋ฆฌ๋ค์ด๋ ํธ ๋ ํ์ด์ง์
๋๋ค.
</h1>
</body>
</html>
<์คํ ๊ฒฐ๊ณผ>
โ
โ
โ
์ฌํ ) ๋ค๋ฅธ ํ์ด์ง ๋์ฐ๊ธฐ
โ
โ
requestTest2.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Response Test</title>
</head>
<body>
<h1>
ํ์ฌ ํ์ด์ง๋ responseTest1.jsp์ ์ํด<br>
๋ฆฌ๋ค์ด๋ ํธ ๋ ํ์ด์ง์
๋๋ค.
</h1>
<script>
location.href="requestTest1_Form.jsp"
</script>
</body>
</html>
<์คํ ๊ฒฐ๊ณผ>
์ด๋ ๊ฒ ๋์จ๋ค.
โ
โโ
โ
โถ pageContext ๊ฐ์ฒด
JSP ํ์ด์ง์ ๊ด๋ จ๋ ํ๋ก๊ทธ๋จ์์ ๋ค๋ฅธ ๋ด์ฅ ๊ฐ์ฒด๋ฅผ ์ป์ด๋ด๊ฑฐ๋ ํ์ฌ ํ์ด์ง์ ์์ฒญ๊ณผ ์๋ต์ ์ ์ด๊ถ์ ๋ค๋ฅธ ํ์ด์ง๋ก ๋๊ฒจ์ฃผ๋๋ฐ ์ฌ์ฉํ๋ค.
๋ฆฌํด ํ์ |
๋ฉ์๋๋ช |
์ค๋ช |
ServletRequest |
getRequest( ) |
ํด๋ผ์ด์ธํธ์ ์์ฒญ ์ ๋ณด๋ฅผ ๋ด๊ณ ์๋ ๊ฐ์ฒด๋ฅผ ๋ฆฌํดํ๋ค. (request ๋ด์ฅ ๊ฐ์ฒด๋ฅผ ๋ฆฌํดํ๋ค.) |
ServletResponse |
getResponse( ) |
์์ฒญ์ ๋ํ ์๋ต ๊ฐ์ฒด๋ฅผ ๋ฆฌํดํ๋ค. (response ๋ด์ฅ ๊ฐ์ฒด๋ฅผ ๋ฆฌํดํ๋ค.) |
JspWriter |
getOut( ) |
์๋ต ์ถ๋ ฅ ์คํธ๋ฆผ์ ๋ฆฌํดํ๋ค.(out ๋ด์ฅ ๊ฐ์ฒด๋ฅผ ๋ฆฌํดํ๋ค.) |
Object |
getPage( ) |
์๋ธ๋ฆฟ ์ธ์คํด์ค ๊ฐ์ฒด๋ฅผ ๋ฆฌํดํ๋ค.(page ๋ด์ฅ ๊ฐ์ฒด๋ฅผ ๋ฆฌํดํ๋ค.) |
ServletConfig |
getServletConfig( ) |
์๋ธ๋ฆฟ์ ์ด๊ธฐ ์ค์ ์ ๋ณด๋ฅผ ๋ด๊ณ ์๋ ๊ฐ์ฒด๋ฅผ ๋ฆฌํดํ๋ค. (config ๋ด์ฅ ๊ฐ์ฒด๋ฅผ ๋ฆฌํดํ๋ค.) |
ServletContext |
getServletContext( ) |
์๋ธ๋ฆฟ์ ์คํ ํ๊ฒฝ ์ ๋ณด๋ฅผ ๋ด๊ณ ์๋ ๊ฐ์ฒด๋ฅผ ๋ฆฌํดํ๋ค. (application ๋ด์ฅ ๊ฐ์ฒด๋ฅผ ๋ฆฌํดํ๋ค.) |
HttpSession |
getSession( ) |
ํด๋ผ์ด์ธํธ์ ์ธ์ ์ ๋ณด๋ฅผ ๋ด๊ณ ์๋ ๊ฐ์ฒด๋ฅผ ๋ฆฌํดํ๋ค. (session ๋ด์ฅ ๊ฐ์ฒด๋ฅผ ๋ฆฌํดํ๋ค.) |
์์ |
forward(String url) |
ํ์ฌ ํ์ด์ง์ ์์ฒญ๊ณผ ์๋ต์ ๊ดํ ์ ์ด๊ถ์ URL๋ก ์ง์ ๋ ์ฃผ์๋ก ์๊ตฌ์ ์ผ๋ก ๋๊ธด๋ค. forward๋ ํ์ด์ง์ ์์ฒญ ์ฒ๋ฆฌ๊ฐ ์ข ๋ฃ๋๋ฉด ์๋ต๋ ์ข ๋ฃ๋๋ค. |
์์ |
include(String url) |
ํ์ฌ ํ์ด์ง์ ์์ฒญ๊ณผ ์๋ต์ ๊ดํ ์ ์ด๊ถ์ URL๋ก ์ง์ ๋ ์ฃผ์๋ก ์์๋ก ๋๊ธด๋ค. include๋ ํ์ด์ง์ ์ฒ๋ฆฌ๊ฐ ๋๋๋ฉด ์ ์ด๊ถ์ ๋ค์ ์๋์ ํ์ด์ง๋ก ๋์์จ๋ค. ๋ฐ๋ผ์ include๋ก ์ง์ ๋ ํ์ด์ง์ ๋ด์ฉ์ ์๋ ํ์ด์ง์ ์ฝ์ ํ๋ ํจ๊ณผ๋ฅผ ๊ฐ์ง๋ค. |
โโ
โ
pageContextTest1.jsp (์คํ ํ์ด์ง)
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
pageContext.forward("pageContextTest2.jsp");
%>
pageContextTest2.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>pageContext Test</title>
</head>
<body>
<%
pageContext.include("pageContextTest3.jsp");
%>
<h2>pageContext์ forward ๋ฉ์๋๋ก ํฌ์๋ฉ๋ ํ์ด์ง์
๋๋ค.</h2>
</body>
</html>
pageContextTest3.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<h3>include ๋๋ pageContextTest3.jsp ํ์ด์ง์
๋๋ค.</h3>
<hr>
forward : ๊ถํ์ ์์ ๋๊ฒจ๋ฒ๋ฆผ
include : ๊ถํ์ ์คฌ๋ค๊ฐ ๋ค์ ๊ฐ์ ธ์ด
โ
<์คํ ๊ฒฐ๊ณผ>
โ
โ
โ
โถ session ๊ฐ์ฒด
HTTP ํ๋กํ ์ฝ์ ์์ฒญ/์๋ต์ ๊ตฌ์กฐ๋ก ๋์ด์์ด ์๋ฒ๊ฐ ์์ฒญ์ ๋ํ ์๋ต์ ์ ์กํ๊ณ ๋๋ฉด ์ฐ๊ฒฐ์ด ๋์ด์ง๊ฒ๋๋ค. ๋ฐ๋ผ์ ์ ๋ณด๊ฐ ์ ์ง๋์ด์ผ ํ ํ์๊ฐ ์๋ ๊ฒฝ์ฐ๋ฅผ ์ํด ๊ฐ์ ์ฐ๊ฒฐ์ด๋ผ๋ ๊ฐ๋ ์ ์ธ์ ์ด ๋ฑ์ฅํ์๊ณ JSP์์๋ ์ด๋ฌํ ์ธ์ ์ session ๋ด์ฅ ๊ฐ์ฒด๋ฅผ ์ด์ฉํ์ฌ ๊ตฌํํด ์ค๋ค.
๋ฆฌํด ํ์ |
๋ฉ์๋๋ช |
์ค๋ช |
String |
getId( ) |
ํด๋น ์ธ์ ์ ์ธ์ ID๋ฅผ ๋ฌธ์์ด๋ก ๋ฆฌํดํ๋ค. ์ธ์ ID๋ session ๊ฐ์ฒด ์์ฑ ์์ ์น ์ปจํ ์ด๋์ ์ํด ์๋์ผ๋ก ํ ๋น๋๋ค. |
long |
getCreationTime( ) |
1970๋ 1์ 1์ผ 00์ 00๋ถ 00์ด(epoch)๋ถํฐ ํด๋น ์ธ์ ์ด ์์ฑ๋ ์๊ฐ๊น์ง์ ๊ฒฝ๊ณผ ์๊ฐ์ ๋ฐ๋ฆฌ์ด๋ก ๊ณ์ฐํ์ฌ longํ์ผ๋ก ๋ฆฌํดํ๋ค. |
long |
getLastAccessedTime( ) |
epoch๋ก๋ถํฐ ํด๋น ์ธ์ ์ ๋ง์ง๋ง์ผ๋ก ์ ๊ทผ๋ ์๊ฐ๊น์ง์ ๊ฒฝ๊ณผ ์๊ฐ์ ๋ฐ๋ฆฌ์ด๋ก ๊ณ์ฐํ์ฌ longํ์ผ๋ก ๋ฆฌํดํ๋ค. |
int |
getMaxInactiveInterval( ) |
ํด๋ผ์ด์ธํธ์ ์์ฒญ์ด ์์ ์ ์๋ฒ๊ฐ ํด๋น ์ธ์ ์ ์ ์งํ๋๋ก ์ง์ ๋ ์๊ฐ์ ์ด ๋จ์์ ์ ์๋ก ๋ฆฌํดํ๋ค. |
์์ |
invalidate( ) |
์ธ์ ์ ์์ฑ ๊ฐ์ผ๋ก ์ ์ฅ๋ ๋ชจ๋ ๊ฐ์ฒด๋ฅผ ๋ฐ๋ฉํ์ฌ ํด๋น ์ธ์ ์ ์ข ๋ฃ์ํจ๋ค. |
boolean |
isNew( ) |
์๋ก์ด ์ธ์ ์ผ ๊ฒฝ์ฐ true๋ฅผ ๋ฆฌํดํ๊ณ ๊ธฐ์กด์ ์ธ์ ์ด ์ ์ง๋๊ณ ์์ผ๋ฉด false๋ฅผ ๋ฆฌํดํ๋ค. |
์์ |
setMaxInactiveInterval (int seconds) |
ํด๋ผ์ด์ธํธ์ ์์ฒญ์ด ์๋๋ผ๋ ์ธ์ ์ ์ ์งํ ์๊ฐ ์ด ๋จ์์ ์ ์๊ฐ์ผ๋ก ์ค์ ํ๋ค. ์์๋ก ์ค์ ํ ๊ฒฝ์ฐ ์ธ์ ์ ๋ฌดํจํ(invalidate)๋์ง ์๋๋ค. |
์์ |
forward(String url) |
ํ์ฌ ํ์ด์ง์ ์์ฒญ๊ณผ ์๋ต์ ๊ดํ ์ ์ด๊ถ์ URL๋ก ์ง์ ๋ ์ฃผ์๋ก ์๊ตฌ์ ์ผ๋ก ๋๊ธด๋ค. forward๋ ํ์ด์ง์ ์์ฒญ ์ฒ๋ฆฌ๊ฐ ์ข ๋ฃ๋๋ฉด ์๋ต๋ ์ข ๋ฃ๋๋ค. |
์์ |
include(String url) |
ํ์ฌ ํ์ด์ง์ ์์ฒญ๊ณผ ์๋ต์ ๊ดํ ์ ์ด๊ถ์ URL๋ก ์ง์ ๋ ์ฃผ์๋ก ์์๋ก ๋๊ธด๋ค. include๋ ํ์ด์ง์ ์ฒ๋ฆฌ๊ฐ ๋๋๋ฉด ์ ์ด๊ถ์ ๋ค์ ์๋์ ํ์ด์ง๋ก ๋์์จ๋ค. ๋ฐ๋ผ์ include๋ก ์ง์ ๋ ํ์ด์ง์ ๋ด์ฉ์ ์๋ ํ์ด์ง์ ์ฝ์ ํ๋ ํจ๊ณผ๋ฅผ ๊ฐ์ง๋ค. |
โโ
โ
sessionTest1.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
session.setMaxInactiveInterval(10);
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Session Test</title>
</head>
<body>
<h2>์ธ์
ํ
์คํธ</h2>
isNew() : <%=session.isNew() %><br>
์์ฑ์๊ฐ : <%=session.getCreationTime() %><br>
์ต์ข
์ ์ ์๊ฐ : <%=session.getLastAccessedTime() %><br>
์ธ์
ID : <%=session.getId() %><br>
</body>
</html>
4์ค์ session.setMaxInactiveInterval(10); ์ 10์ด๊ฐ ์ธ์ ์ํ๋ฅผ ์ ์งํ๋ค๋ ๋ป
<์คํ ๊ฒฐ๊ณผ>
โ
โโ
โ
โถ application ๊ฐ์ฒด (๊ฐ๋ฐ์๋ค์ ์ ์ฌ์ฉ ์ํจ)
ํด๋น ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํ ํ๊ฒฝ์ ์ ๊ณตํ๋ ์๋ฒ์ ์ ๋ณด์ ์๋ฒ์ธก ์์์ ๋ํ ์ ๋ณด๋ฅผ ์์๋ด๊ฑฐ๋ ํด๋น ์ ํ๋ฆฌ์ผ์ด์ ์ ์ด๋ฒคํธ ๋ก๊ทธ๋ฅผ ๋ค๋ฃจ๋ ๋ฉ์๋๋ค์ ์ ๊ณตํ๋ค.
application์ ๊ฐ ์น ์ ํ๋ฆฌ์ผ์ด์ ๋น ์ค์ง ํ๋๋ง์ ๊ฐ์ฒด๋ง์ด ์์ฑ๋๋ฏ๋ก ํด๋น ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฒด ์์ญ์์ ์์์ ๊ณต์ ํด์ผ ํ ๋(๋ฐฉ๋ฌธ์ ์ ๋ฑ์ ํต๊ณ๋ฅผ ๋ค๋ฃฐ ๋) ์ฃผ๋ก ์ฌ์ฉ๋๋ค.
โ
โ
applicationTest1.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Application Test</title>
</head>
<body>
<h2>application ํ
์คํธ</h2>
<table border="1">
<tr>
<td>JSP ๋ฒ์ </td>
<td><%=application.getMajorVersion() %>.<%=application.getMinorVersion() %></td>
</tr>
<tr>
<td>์ปจํ
์ด๋ ์ ๋ณด</td>
<td><%=application.getServerInfo() %></td>
</tr>
<tr>
<td>์น ์ ํ๋ฆฌ์ผ์ด์
์ ์ค์ ํ์ผ์์คํ
๊ฒฝ๋ก</td>
<td><%=application.getRealPath("/") %></td>
</tr>
</table>
</body>
</html>
<์คํ ๊ฒฐ๊ณผ>
โ
โ
โถ out ๊ฐ์ฒด
out ๊ฐ์ฒด๋ ์๋ธ๋ฆฟ/JSP ์ปจํ ์ด๋๊ฐ ์๋ต ํ์ด์ง๋ฅผ ๋ง๋ค๊ธฐ ์ํด ์ฌ์ฉํ๋ ์ถ๋ ฅ ์คํธ๋ฆผ ๊ฐ์ฒด์ด๋ค.
๊ฐ์ฅ ์ค์ํ๊ณ ๋น๋ฒํ๊ฒ ์ฌ์ฉ๋๋ ๊ฐ์ฒด.
ํํ์ ํ๊ทธ์ out ๊ฐ์ฒด์ print( ) ๋ฉ์๋๋ ๊ทธ ์ฒ๋ฆฌ ๊ณผ์ ์ด ์์ ํ ๋์ผํ๋ค.
๋ฆฌํด ํ์ |
๋ฉ์๋๋ช |
์ค๋ช |
์์ |
clear() |
์ถ๋ ฅ ๋ฒํผ์ ์ ์ฅ๋ ๋ด์ฉ์ ๋ฒ๋ฆฐ๋ค. ๋ง์ผ ์ด๋ฏธ ๋ฒํผ๊ฐ ๋ค ์ฑ์์ ธ์ ํด๋ผ์ด์ธํธ๋ก ์ ์ก๋์์ ๊ฒฝ์ฐ์๋ ์์ธ๋ฅผ ๋ฐ์์ํจ๋ค. |
์์ |
clearBuffer() |
์ถ๋ ฅ ๋ฒํผ์ ์ ์ฅ๋ ๋ด์ฉ์ ๋ฒ๋ฆฐ๋ค. clear() ๋ฉ์๋์๋ ๋ค๋ฅด๊ฒ ๋ฒํผ์ ๋ด๊ธด ๋ด์ฉ์ด ์ด๋ฏธ ์ ์ก๋ ์ดํ์๋ ์์ธ๋ฅผ ๋ฐ์์ํค์ง ์๊ณ ํ์ฌ ์ ์ฅ๋์ด ์๋ ๋ฒํผ๋ง์ ๋ฒ๋ฆฐ๋ค. |
์์ |
flush() |
ํ์ฌ ๋ฒํผ์ ์ ์ฅ๋์ด ์๋ ๋ด์ฉ์ ํด๋ผ์ด์ธํธ๋ก ์ ์กํ๊ณ ๋ฒํผ๋ฅผ ๋น์ด๋ค. |
์์ |
close() |
์ถ๋ ฅ ๋ฒํผ๋ฅผ ํด๋ผ์ด์ธํธ๋ก ์ ์กํ๊ณ ์ถ๋ ฅ ์คํธ๋ฆผ์ ์ข ๋ฃํ๋ค. |
boolean |
isAutoFlush() |
page ์ง์์ด์ autoFlush ์์ฑ์ผ๋ก ์ง์ ๋ ๊ฐ์ ๋ฆฌํดํ๋ค. ์ฆ ์ถ๋ ฅ ๋ฒํผ๊ฐ ๋ค ์ฑ์์ก์ ๋ ๋ฒํผ ๋ด์ฉ์ ํด๋ผ์ด์ธํธ๋ก ์ ์กํ๋๋ก ์ง์ ๋์ด ์์ผ๋ฉด true๋ฅผ ๋ฆฌํดํ๊ณ , ์ถ๋ ฅ ๋ฒํผ๊ฐ ๋ค ์ฑ์์ก์ ๋ ์์ธ๊ฐ ๋ฐ์ํ๋๋ก ์ง์ ๋์ด ์์ผ๋ฉด false๋ฅผ ๋ฆฌํดํ๋ค. |
int |
getBufferSize() |
์ถ๋ ฅ ๋ฒํผ์ ํฌ๊ธฐ๋ฅผ ๋ฐ์ดํธ ๋จ์๋ก ๊ณ์ฐํ์ฌ ์ ์ ๊ฐ์ผ๋ก ๋ฆฌํดํ๋ค. |
int |
getRemaining() |
์ถ๋ ฅ ๋ฒํผ์ ๋จ์ ์์ ๋ฐ์ดํธ ๋จ์๋ก ๊ณ์ฐํ์ฌ ์ ์ ๊ฐ์ผ๋ก ๋ฆฌํดํ๋ค. |
์์ |
print(String str) |
์ถ๋ ฅ ์คํธ๋ฆผ์ผ๋ก str ๋ฌธ์์ด์ ์ถ๋ ฅํ๋ค. |
์์ |
log (String msg, java.lang.Throwable exception) |
๋ฌธ์์ด msg์ ์์ธ์ StackTrace ์ ๋ณด๋ฅผ ๋ก๊ทธ ํ์ผ์ ๊ธฐ๋กํ๋ค. |
โ
โ
outTest1.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<h2>1๋ถํฐ 100๊น์ง์ ํฉ์
<%
int sum = 0;
for(int i = 0; i <= 100; i++) {
sum += i;
}
out.print(sum + "์
๋๋ค.</h2>");
%>
</h2>
<์คํ ๊ฒฐ๊ณผ>
โ
โ
outTest2.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<h2>1๋ถํฐ 100๊น์ง์ ํฉ์
<%
int sum = 0;
for(int i = 0; i <= 100; i++) {
sum += i;
}
%>
<%=sum %>์
๋๋ค.</h2>
<์คํ ๊ฒฐ๊ณผ>
โโ
โ
outTest3.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Out Test</title>
</head>
<body>
<h2>Out ํ
์คํธ</h2>
<table border="1">
<tr>
<td>autoFlush ์ฌ๋ถ</td>
<td><%=out.isAutoFlush()%></td>
</tr>
<tr>
<td>์ถ๋ ฅ ๋ฒํผ์ ํฌ๊ธฐ</td>
<td><%=out.getBufferSize() %>๋ฐ์ดํธ</td>
</tr>
<tr>
<td>์ถ๋ ฅ ๋ฒํผ์ ๋จ์ ์</td>
<td><%=out.getRemaining() %>๋ฐ์ดํธ</td>
</tr>
</table>
</body>
</html>
<์คํ ๊ฒฐ๊ณผ>
โ
โ
โ
โถ config ๊ฐ์ฒด
config ๋ด์ฅ ๊ฐ์ฒด๋ JSP ํ์ด์ง๊ฐ ์๋ธ๋ฆฟ ํด๋์ค๋ก ๋ณํ๋์ด ์๋ธ๋ฆฟ ์ธ์คํด์ค๊ฐ ์์ฑ๋ ๋ ์ฐธ์กฐํด์ผ ํ ์ด๊ธฐ ์ค์ ์ ๋ณด๋ค์ ์ ์ฅํด ๋์ ๊ฐ์ฒด์ด๋ค. ์ด๋ฌํ ์ด๊ธฐ ์ค์ ์ ๋ณด๋ค์ ์น ์ปจํ ์ด๋๊ฐ ๊ตฌ๋๋ ๋ ๋ด๋ถ์์ ์์ฒด์ ์ผ๋ก ์์ฑ/๊ด๋ฆฌ๋๋ฉฐ ์๋ธ๋ฆฟ๋น 1๊ฐ๋ง์ ๊ฐ์ฒด๊ฐ ์์ฑ๋๋ฉฐ ๊ฐ์ ์๋ธ๋ฆฟ ์ธ์คํด์ค๋ ๋์ผํ config ๊ฐ์ฒด๋ฅผ ์ฐธ์กฐํ๊ฒ ๋๋ค.
๋ฆฌํด ํ์ |
๋ฉ์๋๋ช |
์ค๋ช |
String |
getInitParameter |
์ปจํ
์ด๋์ ์ค์ ํ์ผ์ ์ ์ฅ๋์ด ์๋ ์ด๊ธฐ ํ๋ผ๋ฏธํฐ ๊ฐ ์ค init_paramName์ ์ด๋ฆ์ ๊ฐ์ง ํ๋ผ๋ฏธํฐ ๊ฐ์ ๋ฆฌํดํ๋ค. |
Enumeration |
getInitParameterNames() |
์ปจํ ์ด๋์ ์ค์ ํ์ผ์ ์ ์ฅ๋์ด ์๋ ๋ชจ๋ ์ด๊ธฐ ํ๋ผ๋ฏธํฐ ์ด๋ฆ์ Enumeration ํ์ ์ผ๋ก ๋ฆฌํดํ๋ค. |
String |
getServletName() |
ํด๋น ์๋ธ๋ฆฟ์ ์ด๋ฆ์ ๋ฌธ์์ด๋ก ๋ฆฌํดํ๋ค. |
โ
web.xml
<web-app>
<display-name>chapter5</display-name>
<servlet>
<servlet-name>configTest1</servlet-name>
<jsp-file>/configTest1.jsp</jsp-file>
<init-param>
<param-name>fileDir</param-name>
<param-value>C:/test</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>configTest1</servlet-name>
<url-pattern>/configTest1.jsp</url-pattern>
</servlet-mapping>
</web-app>
configTest1.jsp
<%@ 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>Config Test</title>
</head>
<body>
<h2>config ํ
์คํธ</h2>
<table border="1">
<tr>
<td>์ด๊ธฐ ํ๋ผ๋ฏธํฐ ์ด๋ฆ</td>
<td>์ด๊ธฐ ํ๋ผ๋ฏธํฐ ๊ฐ</td>
</tr>
<%
Enumeration e=config.getInitParameterNames();
while(e.hasMoreElements()) {
String init_paramName=(String)e.nextElement();
%>
<tr>
<td><%=init_paramName %></td>
<td><%=config.getInitParameter(init_paramName) %></td>
</tr>
<% } %>
</table>
</body>
</html>
<์คํ ๊ฒฐ๊ณผ>
โถ page ๊ฐ์ฒด
page ๊ฐ์ฒด๋ JSP ํ์ด์ง์ ์ํด ์์ฑ๋๋ ์๋ธ๋ฆฟ ์ธ์คํด์ค ์์ฒด๋ฅผ ๋ํ๋ด๋ ๊ฐ์ฒด์ด๋ค. page ๊ฐ์ฒด๋ ์ฌ์ฉ ๋น๋๊ฐ ๋ฎ๋ค. ๋ค๋ง ์ปจํ ์ด๋๊ฐ ์๋ฐ ์ด์ธ์ ๋ค๋ฅธ ์คํฌ๋ฆฝํธ ์ธ์ด๋ฅผ ์ง์ํ๊ฒ ๋๋ค๋ฉด ํด๋น ์คํฌ๋ฆฝํธ ์ธ์ด๋ฅผ ์ฌ์ฉํ ์คํฌ๋ฆฝํธ ์ฝ๋์์ page ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ์ฌ ์๋ธ๋ฆฟ ์ธ์คํด์ค๋ฅผ ์ฐธ์กฐํ ์๋ ์๊ฒ ๋๋ค.
โถ exception ๊ฐ์ฒด
exception ๊ฐ์ฒด๋ JSP ํ์ด์ง์์ ์์ธ๊ฐ ๋ฐ์ํ์์ ๊ฒฝ์ฐ ๊ทธ ์์ธ๋ฅผ ์ฒ๋ฆฌํ ์๋ฌ ํ์ด์ง๋ฅผ ์ฌ์ฉ์๊ฐ ์ง์ ํ ๊ฒฝ์ฐ์ ํด๋น ์๋ฌ ํ์ด์ง์ ์ ๋ฌ๋๋ ์์ธ ๊ฐ์ฒด์ด๋ค. exception ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์๋ ํด๋น ํ์ด์ง๊ฐ ์๋ฌ ํ์ด์ง๋ก ์ง์ ๋์ด ์์ด์ผ๋ง ํ๋ค. ์ฆ page ์ง์์ด์ ์ํด isErrorPage ์์ฑ์ด true๋ก ์ง์ ๋์ด ์์ด์ผ๋ง ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ฉฐ inErrorPage ์์ฑ์ ๊ธฐ๋ณธ๊ฐ์ false์ด๊ธฐ ๋๋ฌธ์ ์ฌ์ฉ์๊ฐ true๋ก ์ค์ ํด ์ฃผ์ด์ผ ์๋ฌ ํ์ด์ง๋ก ์ง์ ๋๋ค. exception ๊ฐ์ฒด๋ java.lang.Throwable ํด๋์ค๋ก ์ ์ธ๋๋ฉฐ ๋ค์๊ณผ ๊ฐ์ ๋ฉ์๋๋ค์ด ์๋ค.
๋ฆฌํด ํ์ |
๋ฉ์๋๋ช |
์ค๋ช |
String |
getMessage() |
์๋ฌ ๋ฉ์์ง๋ฅผ ๋ฌธ์์ด๋ก ๋ฆฌํดํ๋ค. |
์์ |
printStackTrace() |
ํด๋น ์๋ฌ์ StackTrace ์ ๋ณด๋ฅผ ์ถ๋ ฅํ๋ค. |
์์ |
printStackTrace |
ํด๋น ์๋ฌ์ StackTrace ์ ๋ณด๋ฅผ PrintWriter ๊ฐ์ฒด out์ผ๋ก ์ถ๋ ฅํ๋ค. |
์์ |
printStackTrace |
ํด๋น ์๋ฌ์ StackTrace ์ ๋ณด๋ฅผ PrintStream ๊ฐ์ฒด out์ผ๋ก ์ถ๋ ฅํ๋ค. |
'JSP' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JSP] ์ก์ ํ๊ทธ (0) | 2021.02.10 |
---|---|
[JSP] ๋ด์ฅ ๊ฐ์ฒด์ ์ก์ ํ๊ทธ - ์์ญ ๊ฐ์ฒด์ ์์ฑ (0) | 2021.02.10 |
[JSP] ์คํฌ๋ฆฝํธ ์์ (0) | 2021.02.09 |
[JSP] ์ง์์ด (Directive) (0) | 2021.02.09 |
[JSP] forwarding (0) | 2021.02.09 |
๋๊ธ