๐น JSP ๋ด์ฅ ๊ฐ์ฒด
JSP ํ์ผ ๋ด์ ๊ฐ์ฒด๋ฅผ ์์ฑํ์ง ์๊ณ ๋ฐ๋ก ์ฌ์ฉํ ์ ์๋ ๊ฐ์ฒด
๋ด์ฅ๊ฐ์ฒด๋ ์ปจํ
์ด๋์ ์ํด ์๋ธ๋ฆฟ์ผ๋ก ๋ณํ๋ ๋, ์๋์ผ๋ก ๊ฐ์ฒด๊ฐ ์์ฑ๋๋ค.
HttpServletRequest
- httpํ๋กํ ์ฝ์ request์ ๋ณด๋ฅผ ์๋ธ๋ฆฟ์๊ฒ ์ ๋ฌํ๊ธฐ ์ํด ์ฌ์ฉ
- ํค๋์ ๋ณด, ํ๋ผ๋ฏธํฐ, ์ฟ ํค, URI, URL ๋ฑ์ ์ ๋ณด๋ฅผ ์ฝ์ด ๋ค์ด๋ ๋ฉ์๋ ํฌํจ
- Body์ Stream์ ์ฝ์ด ๋ค์ด๋ ๋ฉ์๋ ํฌํจ
HttpServletResponse
- ์์ฒญ์ ๋ณด๋ธ ํด๋ผ์ด์ธํธ์๊ฒ ์๋ต์ ๋ณด๋ด๊ธฐ ์ํด WAS์์ ์์ฑ๋์ด ์๋ธ๋ฆฟ์๊ฒ ์ ๋ฌ๋จ
- ์๋ธ๋ฆฟ์ ์ด ๊ฐ์ฒด๋ฅผ ์ด์ฉํ์ฌ content type, ์๋ต์ฝ๋, ์๋ต ๋ฉ์์ง๋ฑ์ ์ ์ก
https://velog.io/@oliviarla/HttpServletRequest-HttpServletResponse-%EA%B0%9D%EC%B2%B4%EB%9E%80
๐นJSP ๋ด์ฅ ๊ฐ์ฒด ์ข
๋ฅ
๐น request ๊ฐ์ฒด
request ๋, ๋ธ๋ผ์ฐ์ ๋ฅผ ํตํด ์๋ฒ์ ์ด๋ค ์ ๋ณด๋ฅผ ์์ฒญํ๋ ๊ฒ
์์ฒญ ์ ๋ณด๊ฐ ๋ด๊ธฐ๊ณ ๊ด๋ฆฌํ๋ ๊ฐ์ฒด
1. ํด๋ผ์ด์ธํธ(์น ๋ธ๋ผ์ฐ์ )์ ๊ด๋ จ๋ ์ ๋ณด ์ฝ๊ธฐ ๊ธฐ๋ฅ.
2. ์๋ฒ์ ๊ด๋ จ๋ ์ ๋ณด ์ฝ๊ธฐ ๊ธฐ๋ฅ.
3. ํด๋ผ์ด์ธํธ๊ฐ ์ ์กํ ์์ฒญ ํ๋ผ๋ฏธํฐ ์ฝ๊ธฐ ๊ธฐ๋ฅ.
4. ํด๋ผ์ด์ธํธ๊ฐ ์ ์กํ ์ฟ ํค ์ฝ๊ธฐ ๊ธฐ๋ฅ.
๐น response ๊ฐ์ฒด
response๋, ๋ธ๋ผ์ฐ์ ์ ์์ฒญ์ ์๋ตํ๋ ๊ฒ
์๋ต ์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ ์๋ ๊ฐ์ฒด
๐น out ๊ฐ์ฒด
์น ๋ธ๋ผ์ฐ์ ์ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ์ถ๋ ฅ ์คํธ๋ฆผ
๋ณดํต ์คํฌ๋ฆฝํธ๋ฆฟ ์ฝ๋๋ฅผ ์ฌ์ฉํ ๋ ์ฝ๋๊ฐ ๊ธธ์ด์ง๋ ๊ฒฝ์ฐ out ๊ฐ์ฒด๋ก ๋์ฒดํ์ฌ ์ฌ์ฉํ๋ ํธ.
์ฆ, ๋ณต์กํจ ์ ๊ฑฐ์ ๋ชฉ์
JSP ํ์ด์ง๊ฐ ์์ฑํ๋ ๋ชจ๋ ๋ด์ฉ์ out ๊ธฐ๋ณธ ๊ฐ์ฒด๋ฅผ ํตํด ์ ์ก
JSP ํ์ด์ง ๋ด์์ ์ฌ์ฉํ๋ ๋น์คํฌ๋ฆฝํธ ์์๋ค(HTML์ฝ๋์ ํ
์คํธ)์ด out ๊ฐ์ฒด์ ์ ๋ฌ
๊ฐ์ ์ถ๋ ฅํ๋ ํํ์(expression)์ ๊ฒฐ๊ณผ๊ฐ๋ out๊ฐ์ฒด์ ์ ๋ฌ๋ฉ๋๋ค.
(ํํ์์ผ๋ก ๋์ฒด)
<%
out.print("<h1>์๋
!<h1>๏ผ);
out.print(๏ผ<h2>๋ฐ๊ฐ์</h2>");
%>
๐น application ๊ธฐ๋ณธ ๊ฐ์ฒด
- ํน์ ์น ์ดํ๋ฆฌ์ผ์ด์ ์ ํฌํจ๋ ๋ชจ๋ JSPํ์ด์ง๋ ํ๋์ application ๊ธฐ๋ณธ ๊ฐ์ฒด๋ฅผ ๊ณต์
- application ๊ฐ์ฒด๋ ์น ์ดํ๋ฆฌ์ผ์ด์ ์ ๋ฐ์ ๊ฑธ์ณ์ ์ฌ์ฉ๋๋ ์ ๋ณด๋ฅผ ๋ด๊ณ ์์ต๋๋ค.
- ์ด๊ธฐ ์ค์ ์ ๋ณด๋ฅผ ์ฝ์ด์ด
- ์๋ฒ ์ ๋ณด๋ฅผ ์ฝ์ด์ด
- ์น ์ดํ๋ฆฌ์ผ์ด์ ์ด ์ ๊ณตํ๋ ํ์ผ์ ์ฝ์ด์ด
<context-param>
<description> (ํ์์๋) </description>
<param-name> </param-name>
<param-value> </param-value>
</context-param>
//web.xml ์ ์๋ธ๋ฆฟ ๊ท์ฝ์ ์ด๊ธฐํ ํ๋ผ๋ฏธํฐ๋ก ์ถ๊ฐ
application.getInitParamterNames(); ....
๐น pageContext ๊ฐ์ฒด
jsp ํ์ด์ง์ 1:1๋ก ์ฐ๊ฒฐ๋ ๊ฐ์ฒด
์ปค์คํ ํ๊ทธ๋ฅผ ๊ตฌํํ ๋ ์ฃผ๋ก ์ฌ์ฉํ๋ค.