javax.servlet
Interface ServletRequest
> Interface HttpServletRequest
์ฐ๋ฆฌ๊ฐ ์ฐ๋ ์๋ธ๋ฆฟ์ HttpServlet์ด๋ ์ถ์ ํด๋์ค๋ฅผ ์์๋ฐ๋๋ค.
๋ชจ๋ ์๋ธ๋ฆฟ์ด ๊ตฌํํด์ผ ํ๋ ๋ฉ์๋๋ฅผ ์ ์.
์๋ธ๋ฆฟ์ ์๋ช
์ฃผ๊ธฐ์ ํ์ํ
init(), service(), destroy() ์ ๊ณต.
์๋ธ๋ฆฟ ์ปจํ
์ด๋๊ฐ ์๋ธ๋ฆฟ์ ์ด๊ธฐํํ ๋ ํ์๋ก ํ๋ ์ ๋ณด๋ฅผ ์ ๋ฌ.
web.xml(๋ฐฐํฌ์์ ์)์ ์ฐธ๊ณ ํ์ฌ ์๋ธ๋ฆฟ ์ด๊ธฐํ๋ฅผ ์ํ ์ ๋ณด๋ฅผ ์ ์ฅํ๊ณ , ์ปจํ
์ด๋๊ฐ init()์ผ๋ก ์๋ธ๋ฆฟ์ ์ด๊ธฐํํ ๋ servletConfig ๊ฐ์ฒด๊ฐ ํ๋ผ๋ฏธํฐ๋ก ์ ๋ฌ๋๋ค.
์๋ธ๋ฆฟ์ ์ํ ๋ง ๊ทธ๋๋ก ์ผ์ข ์ '์ปจํ ์ด๋' ์๋ธ๋ฆฟ์ ์์ฑ, ์คํ, ํ๊ดด๋ฅผ ๋ด๋น.
์๋ธ๋ฆฟ ์ปจํ ์ด๋์ ๊ฐ์ฅ ์ค์ํ ๊ธฐ๋ฅ์ ์์ฒญ์ ์ฌ๋ฐ๋ฅธ ์๋ธ๋ฆฟ์ ์ ๋ฌํด ์ฒ๋ฆฌ๋๋๋ก ํ๊ณ , JVM์ด ํด๋น ์์ฒญ์ ์ฒ๋ฆฌํ ํ์๋ ์์ฑ๋ ๊ฒฐ๊ณผ๋ฅผ ์ฌ๋ฐ๋ฅธ ์ฅ์์ ๋์ ์ผ๋ก ๋ฐํํด์ฃผ๋ ๊ฒ์ด๋ค.
์๋ธ๋ฆฟ ์ปจํ
์ด๋์ ์๋ธ๋ฆฟ์ ์ฌ์ด์์ ๋์ ์ฐ๊ฒฐํ๋ ๋ฐ ํ์ํ ๊ฐ์ข
๋ฉ์๋๋ฅผ ์ ๊ณตํ๋ค.
๋๋ ์๋ธ๋ฆฟ์์ ๋ค๋ฅธ ์๋ธ๋ฆฟ์ผ๋ก ์ฌ์ฉ์ ์์ฒญ์ ์ ๋ฌํ๋ ๋ฐ ์ฌ์ฉํ ์๋ ์๋ค.
ServletContext ๊ฐ์ฒด๋ ์๋ธ๋ฆฟ ์ปจํ
์ด๋๊ฐ ํ๋ก์ ํธ๋ฅผ ๊ตฌ๋ํ ๋ ์๋์ผ๋ก ์์ฑ๋๊ณ , ํ๋์ ํ๋ก๊ทธ๋จ์ ๋จ ํ๋์ ๊ฐ์ฒด๋ง ์กด์ฌํ๋ค.
servletConfig์ ๋ง์ฐฌ๊ฐ์ง๊ณ web.xml์ ์ฐธ๊ณ ํด ๊ฐ์ข
์ ๋ณด๋ฅผ ์ ์ฅํ๋ค.
servletConfig๊ฐ์ฒด์ ์ ๋ณด๋ ํด๋น ์๋ธ๋ฆฟ์์๋ง ์ฌ์ฉ๊ฐ๋ฅํ๊ณ , ServletContext๊ฐ์ฒด์ ์ ๋ณด๋ ์ปจํ
์ด๋์ ์ํ ๋ชจ๋ ์๋ธ๋ฆฟ์ด ๊ณต์ ํ๋ค.
๋ํ setAttribute()์ getAttribute()๋ฉ์๋๋ฅผ ํตํด ์ ๋ณด๋ฅผ ์ ์ฅํ๊ณ ๊บผ๋ด์ฌ ์ ์๋ ์ ์ฅ์์ ์ญํ ์ ํ๋ค.
์์ฒญ์ ํตํด ์๋ธ๋ฆฟ์ ์ ๋ฌ๋๋ ํด๋ผ์ด์ธํธ์ ์ ๋ณด๋ฅผ ์ ๋ฌํ๋ ๊ฐ์ฒด๋ฅผ ์ ์ํ๊ณ ๊ทธ ๊ฐ์ฒด๋ฅผ ์ด์ฉํ ์ ์๋ ๋ฉ์๋๋ฅผ ์ ๊ณตํ๋ค.
ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ ์์ฒญ(request)ํ๋ฉด ์๋ฒ๋ ๊ณ ๊ฐ ์์ฒญ์ ๋ธ๋ ค์จ ์ ๋ณด๋ฅผ ์ ์ฅํ๊ณ ์๋ธ๋ฆฟ์ ์ ๋ฌํ๊ธฐ ์ํ ๋ชฉ์ ์ผ๋ก ServletRequest ๊ฐ์ฒด๋ฅผ ๋ง๋ ๋ค.
ServletRequest๊ฐ์ฒด๋ ์๋ธ๋ฆฟ ์คํ์ ์ํ service()๋ฉ์๋์ ๋งค๊ฐ๋ณ์๋ก ์ ๋ฌ๋๊ณ , ์ด ์ ๋ณด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์๋ธ๋ฆฟ์ด ๊ฐ์ข
๋ก์ง์ ์ํํ๊ฒ ๋๋ค.
์ฌ์ฉ์๊ฐ service()๋ก์ง์ ์ํํ๋ฉด์ ๊ฐ์ฒด์ ๋ฐ๋ก ์ ๋ณด ์ ์ฅ๋ ๊ฐ๋ฅํ๋ฐ, setAttribute() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค.
๊ณ ๊ฐ ์์ฒญ์ ๋ฐ๋ฅธ ์๋ต(response)์ ํ ๋ ์ฌ์ฉ๋๋ ๊ฐ์ฒด๋ฅผ ์ ์ํ๊ณ ๋ฉ์๋๋ฅผ ์ ๊ณตํ๋ค.
์์ฑ ์์ ์ ServletRequest์ ๋์ผํ๋ค. ๋ ๋ค ๊ณ ๊ฐ์ด ์๋ฒ์ ์์ฒญํ ๋ ๋์์ ์์ฑ๋๊ณ , ๋์์ service()๋ฉ์๋์ ๋งค๊ฐ๋ณ์๋ก ์ ๊ณต๋๋ค.
ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ ์์ฒญ์ ๋ณด๋์ ๋ ์์ฑ๋๋ request ๊ฐ์ฒด๋ฅผ ์๋ฒ ์์ ๋ค์ํ ๋ฆฌ์์ค๋ก ์ ๋ฌํ๋ ์ญํ . - ?