JSP Implicit Objects๋ Java ๊ฐ์ฒด๋ค์ ๋๋ค. ๋ช ์์ ์ผ๋ก ๊ฐ๋ฐ์๊ฐ ์ ์ธํ์ง ์์๋ JSP Container์์ ์ ๊ณตํ๋ ๊ฐ์ฒด๋ค์ด๋ผ๊ณ ๋ณด์๋ฉด ๋๊ฒ ์ต๋๋ค. ๊ทธ๋์ JSP Implicit Objects ๋ฅผ pre-defined ๋ณ์๋ผ๊ณ ํ๊ธฐ๋ ํฉ๋๋ค.
JSP ๋ ์ํ๊ฐ์ง์ Implicit Objects๋ฅผ ์ง์ํฉ๋๋ค. ์ ๋ ์๋ ๊ฐ์ฒด๋ค์ด ๋์ ๋ณด์ด๋ค์.
Object | Description |
---|---|
request | This is the HttpServletRequest object associated with the request. |
response | This is the HttpServletResponse object associated with the response to the client. |
out | This is the PrintWriter object used to send output to the client. |
session | This is the HttpSession object associated with the request. |
application | This is the ServletContext object associated with application context. |
config | This is the ServletConfig object associated with the page. |
pageContext | This encapsulates use of server-specific features like higher performance JspWriters. |
page | This is simply a synonym for this, and is used to call the methods defined by the translated servlet class. |
Exception | The Exception object allows the exception data to be accessed by designated JSP. |
The request Object:
request ๊ฐ์ฒด๋ javax.servlet.http.HttpServletRequest ๊ฐ์ฒด์ ์ธ์คํด์ค์ ๋๋ค. ์ฌ์ฉ์๊ฐ ํ์ด์ง๋ฅผ ์์ฒญํ ๋๋ง๋ค JSP engine ์ด ํด๋น ์์ฒญ์ ๋ํ ์๋ก์ด request๊ฐ์ฒด๋ฅผ ์์ฑํฉ๋๋ค. request ๊ฐ์ฒด๋ HTTP header ์ ๋ณด๋ฅผ ์ป์ด์ค๊ธฐ์ํ ๋ฉ์๋๋ฅผ ์ ๊ณตํฉ๋๋ค. form data, cookies, HTTP methods๊ฐ์ ์ ๋ณด๋ค์ด ํค๋์ ๋ณด์ ์๊ฒ ์ฃ .
request ๊ฐ์ฒด์ ๊ด๋ จ๋ ๋ฉ์๋๋ค์ ๋ํ ์ ๋ณด ๋ฐ ์ฌ์ฉ๋ฒ์ ์ค๋ฅธ์ชฝ ๋งํฌ์์ ํ์ธํ์ค ์ ์์ต๋๋ค. JSP - Client Request.
The response Object:
response ๊ฐ์ฒด๋ javax.servlet.http.HttpServletResponse ๊ฐ์ฒด์ ์ธ์คํด์ค์ ๋๋ค. ์๋ฒ๊ฐ request ๊ฐ์ฒด๋ฅผ ๋ง๋๋ ๊ฒ์ฒ๋ผ, ํด๋ผ์ด์ธํธ๋ก ๋ณด๋ด๊ธฐ์ํ response ๊ฐ์ฒด๋ ๋ง๋ญ๋๋ค.
response ๊ฐ์ฒด๋ ๋ํ ์๋ก์ด HTTPํค๋ ์์ฑ์ ๋ค๋ฃจ๊ธฐ์ํ ์ธํฐํ์ด์ค๋ฅผ ์ ์ํฉ๋๋ค. ์ด ๊ฐ์ฒด๋ฅผ ํตํด์ JSP ๊ฐ๋ฐ์๋ค์ ์ฟ ํค, ๋ ์ง ์คํฌํ, HTTP ์ํ ์ฝ๋๋ฑ์ ์ถ๊ฐํ ์ ์์ต๋๋ค.
response ๊ฐ์ฒด์ ๊ด๋ จ๋ ๋ฉ์๋๋ค์ ๋ํ ์ ๋ณด ๋ฐ ์ฌ์ฉ๋ฒ์ ์ฐ์ธก ๋งํฌ์์ ํ์ธํ์ค ์ ์์ต๋๋ค. JSP - Server Response.
The out Object:
out ๊ฐ์ฒด๋ javax.servlet.jsp.JspWriter ๊ฐ์ฒด์ ์ธ์คํด์ค์ด๋ฉฐ content๋ฅผ response์์ ๋ณด๋ด๊ธฐ ์ํด์ ์ฌ์ฉ๋ฉ๋๋ค.
์ฒ์์ JspWriter ๊ฐ์ฒด๋ ํ์ด์ง์ ๋ฒํผ ์ฌ์ฉ์ฌ๋ถ์ ๋ฐ๋ผ ๋ค๋ฅด๊ฒ ์ด๊ธฐํ๋ฉ๋๋ค. Buffering ๊ธฐ๋ฅ์ page ๋๋ ํฐ๋ธ์ buffered='false' ์์ฑ์ ํตํด์ ์ฝ๊ฒ off ํ ์ ์์ต๋๋ค. JspWriter ๊ฐ์ฒด๋ java.io.PrintWriter ํด๋์ค์ ๊ฑฐ์ ๋์ผํ ๋ฉ์๋๋ค์ ๊ฐ์ง๊ณ ์์ต๋๋ค. ํ์ง๋ง JspWriter๋ ์ถ๊ฐ์ ์ผ๋ก ๋ฒํผ๋ง์ ๋ค๋ฃจ๊ธฐ ์ํ ๋ฉ์๋๋ค์ ๊ฐ์ง๊ณ ์์ต๋๋ค. PrintWriter ๊ฐ์ฒด์๋ ๋ค๋ฅด๊ฒ JspWriter ๋ IOExceptions์ ๋์ง๋๋ค.
boolean, char, int, double, object, String, etc. ์ ์ฐ๊ณ ์ถ์ ๋ ์ฌ์ฉํ๋ ๋ฉ์๋๋ ์๋์ ๊ฐ์ต๋๋ค.
Method | Description |
---|---|
out.print(dataType dt) | Print a data type value |
out.println(dataType dt) | Print a data type value then terminate the line with new line character. |
out.flush() | Flush the stream. |
The session Object:
session๊ฐ์ฒด๋ javax.servlet.http.HttpSession์ ์ธ์คํด์ค์ฃ . Java Servlets์ ์ธ์ ๊ณผ ๋์ผํ ์ญํ ์ ํ๋ค๊ณ ๋ณด์๋ฉด ๋ฉ๋๋ค.
session ๊ฐ์ฒด๋ ์ฌ์ฉ์๊ฐ ์ฌ๋ฌ๋ฒ ์์ฒญ์ ํ๊ฒ ๋ ๋ ๊ทธ ์์ฒญ๋ค ์ฌ์ด์ ์ธ์ ์ ์ถ์ ๋ฐ ๊ด๋ฆฌํ๊ธฐ ์ํด์ ์ฌ์ฉ๋ฉ๋๋ค.
session ๊ฐ์ฒด์ ์ฌ์ฉ๋ฒ์ ์ฐ์ธก ๋งํฌ์์ ํ์ธํ์ค ์ ์์ต๋๋ค. JSP - Session Tracking.
The application Object:
application ๊ฐ์ฒด๋ ServletContext๊ฐ์ฒด์ wrapper๊ฐ์ฒด์ ๋๋ค. ์ค์ ๋ก๋ javax.servlet.ServletContext ๊ฐ์ฒด์ ์ธ์คํด์ค์ ๋๋ค.
์ด ๊ฐ์ฒด๋ JSP page ์๋ช ์ฃผ๊ธฐ ์ ์ฒด๋ฅผ ๋ํํ๋ค๊ณ ๋ณด์๋ฉด ๋ฉ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ข ๋ฃ๋๊ธฐ ์ ๊น์ง ์ด์์๋ ๊ฐ์ฒด์ฃ . JSP ํ์ด์ง๊ฐ ์ด๊ธฐํ๋ ๋ ์์ฑ๋๊ณ jspDestroy()๋ฉ์๋์ ์ํด JSPํ์ด์ง๊ฐ ์๋ฉธ๋ ๋ ์ด ๊ฐ์ฒด๋ ์๋ฉธ๋ฉ๋๋ค.
application ๊ฐ์ฒด์ ์์ฑ์ ์ถ๊ฐํจ์ผ๋ก์จ ํด๋น ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ฑํ๋ ๋ชจ๋ JSP ํ์ผ๋ค์ด ์ด๊ณณ์ ์ ๊ทผํ ์ ์๋ ๊ถํ์ด ์๊ธฐ๊ฒ ๋ฉ๋๋ค.
Application ๊ฐ์ฒด์ ๊ฐ๋จํ ์ฌ์ฉ๋ฒ์ ์ฐ์ธก ๋งํฌ์์ ํ์ธํ์ค ์ ์์ต๋๋ค. JSP - Hits Counter
The config Object:
config ๊ฐ์ฒด๋ javax.servlet.ServletConfig ์ ์ธ์คํด์ค์ ๋๋ค.
์ด ๊ฐ์ฒด๋ JSP ๊ฐ๋ฐ์๊ฐ Servlet ์ด๋ JSP ์์ง ์ด๊ธฐํ ํ๋ผ๋ฏธํฐ ( paths ๋๋ file ์์น ๋ฑ )์ ์ ๊ทผํ ์ ์๋๋ก ํด์ค๋๋ค.
๋ง์ด ์ฐ์ด์ง ์๋ ๊ฐ์ฒด์ด๋ฉฐ ์๋ง ์ฐ๊ฒ ๋๋ค๋ฉด ์๋์ ๊ฐ์ด ์ฐ๋ ๊ฒ ๋ง๊ณ ๋ ์ ๋ง ์ธ์ผ์ด ์์ ๊ฒ์ ๋๋ค.
config.getServletName();
์ด๊ฑด ์๋ธ๋ฆฟ๋ช ์ ์ป์ด์ค๋ ๋ฉ์๋์ ๋๋ค. WEB-INF\web.xml ํ์ผ์ <servlet-name> ์์์ ๋ค์ด์๋ ์ด๋ฆ์ ์ป์ด์ค๋ ๊ฒ์ ๋๋ค.
The pageContext Object:
pageContext ๊ฐ์ฒด๋ javax.servlet.jsp.PageContext ๊ฐ์ฒด์ ์ธ์คํด์ค์ ๋๋ค. pageContext ๊ฐ์ฒด๋ JSP page ์ ์ฒด๋ฅผ ๋ํํฉ๋๋ค.
์ด ๊ฐ์ฒด๋ ํ์ด์ง ์ ๋ณด๋ฅผ ์ป์ด์ค๊ธฐ ์ํ ์๋จ์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค.
์ด ๊ฐ์ฒด๋ ๊ฐ ์์ฒญ๋ง๋ค request ์ response๊ฐ์ฒด๋ก์ ๋ํผ๋ฐ์ค๋ฅผ ์ ์ฅํฉ๋๋ค. application, config, session, ๊ทธ๋ฆฌ๊ณ out ๊ฐ์ฒด๋ค์ ์ด ๊ฐ์ฒด์ ์์ฑ์ ์ ๊ทผํด์ ์ป์ด์ฌ ์ ์์ต๋๋ค. pageContext ๊ฐ์ฒด๋ ๋ํ ํด๋น JSP page์์ ๋ฐ์๋ directives์ ์ ๋ณด๋ฅผ ์ ์ฅํ๊ณ ์์ต๋๋ค. ( buffering ์ ๋ณด, errorPageURL, ๊ทธ๋ฆฌ๊ณ page scope๊ฐ์ ์ ๋ณด๋ค ๋ง์ด์ฃ ).
PageContext ํด๋์ค๋ PAGE_SCOPE, REQUEST_SCOPE, SESSION_SCOPE, ๊ทธ๋ฆฌ๊ณ APPLICATION_SCOPE ํ๋๋ค์ ์ ์ํฉ๋๋ค. 40๊ฐ ์ด์์ ๋ฉ์๋๋ฅผ ์ ๊ณตํ๋ฉฐ ๊ทธ ์ค ๋ฐ์ javax.servlet.jsp.JspContext ํด๋์ค์์ ์์๋ฐ์ ๋ฉ์๋๋ค์ ๋๋ค.
๊ฐ์ฅ ์ค์ํ ๋ฉ์๋ ์ค ํ๋๋ removeAttribute์ธ๋ฐ ์ด ๋ฉ์๋๋ ํ๋ ๋๋ ๋๊ฐ์ ํ๋ผ๋ฏธํฐ๋ฅผ ๋ฐ์ต๋๋ค. pageContext.removeAttribute ("attrName") ๋ ๋ชจ๋ scope์์ attrName ์์ฑ์ ์ ๊ฑฐํฉ๋๋ค. ์๋์ ๋์จ ๋ฌธ์ฅ์ page scope์์๋ง ํด๋น ์์ฑ์ ์ ๊ฑฐํฉ๋๋ค.
pageContext.removeAttribute("attrName", PAGE_SCOPE);
pageContext ๊ฐ์ฒด์ ๋ํ ์ฌ์ฉ๋ฒ์ ์ฐ์ธก ๋งํฌ์์ ํ์ธํ์ค ์ ์์ต๋๋ค. JSP - File Uploading.
The page Object:
์ค์ ํ์ด์ง๋ฅผ ์ฐธ์กฐํ๊ณ ์๋ ๊ฐ์ฒด์ ๋๋ค. JSP page์ ์ฒด๋ฅผ ๋ํํ๋ ๊ฐ์ฒด๋ผ๊ณ ์๊ฐํ์๋ฉด ๋ฉ๋๋ค..
์ด ํ์ด์ง ๊ฐ์ฒด๋ ์ค์ ๋ก ์๋ฐ์์ ๋์ค๋ this ๊ฐ์ฒด์ ๋์์ด๋ผ๊ณ ๋ณด์๋ฉด ๋๊ฒ ์ต๋๋ค.
The exception Object:
exception ๊ฐ์ฒด๋ wrapper ๊ฐ์ฒด์ ๋๋ค. ์ด์ ํ์ด์ง์์ ๋์ ธ์ง exception์ ๊ฐ์ง๊ณ ์์ฃ . ๋ญ ์ด๊ฑฐ์ผ ์๋ฐ๋ฅผ ํ์ ๋ถ๋ค์ด๋ผ๋ฉด ์์ธ์ฒ๋ฆฌ๋ฅผ ์ํ ๊ฐ์ฒด๋ผ๊ณ ๊ธ๋ฐฉ ์์ค ๊ฒ๋๋ค. ๋ญ ๋ ์ค๋ช ํ ๊ฒ ์๋ค์.
์ด ๊ฐ์ฒด์ ๋ํ ์ฌ์ฉ๋ฒ์ ์ฐ์ธก ๋งํฌ์์ ํ์ธํ์ค ์ ์์ต๋๋ค. JSP - Exception Handling.
Reference : http://www.tutorialspoint.com/jsp/jsp_implicit_objects.htm
'๐ป Programming > JSP' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JSP] Response Object ( Server Response, Auto Refresh ) (0) | 2019.02.15 |
---|---|
[JSP] Request Object ( Client Request ) (0) | 2019.02.15 |
[JSP] Actions ( ์ก์ ) (0) | 2019.02.15 |
[JSP] Custom Tags ( ์ปค์คํ , ์ฌ์ฉ์ ์ ์ ํ๊ทธ ) (0) | 2019.02.15 |
[JSP] Directives ( ๋๋ ํฐ๋ธ ) (0) | 2019.02.15 |