[DevCourse] ์์ฑํ AI ํ์ฉ ๋ฐฑ์๋ ๋ฐ๋ธ์ฝ์ค 47์ผ์ฐจ
์ค๋์ Spring WebMVC์ ๊ธฐ๋ณธ ๊ตฌ์กฐ์ ๋์ ์๋ฆฌ๋ฅผ ํ์ตํ๊ณ ,
Controller, ViewResolver, Tiles ์ค์ ๊น์ง ์ค์ ์น ์ ํ๋ฆฌ์ผ์ด์ ๊ตฌ์ฑ ๋ฐฉ์์ ๋ํด ํ์ตํ๋ค.
๋จ์ํ ๊ตฌ์กฐ๋ง ์ตํ๋ ๊ฒ์ด ์๋๋ผ, MySQL๊ณผ ์ฐ๋ํด ๋ฐ์ดํฐ๋ฅผ ๋ค๋ค๋ณด๋ ๊ณผ์ ๊น์ง ๊ฒฝํํ ์ ์์ด์ ์ ์ตํ ์์ ์ด์๋ค.
๐ ์ค๋ ๋ฐฐ์ด ๋ด์ฉ ์ ๋ฆฌ
๐ท Spring WebMVC ์ํคํ ์ฒ์ ๊ตฌ์ฑ ์์
WebMVC๋ Model2(MVC) ๊ตฌ์กฐ๋ฅผ ๋ฐํ์ผ๋ก ๋์ํ๋ฉฐ, DispatcherServlet → Controller → Service/DAO → View๋ก ์ด์ด์ง๋ ์์ฒญ ํ๋ฆ์ ํ์ตํ๋ค.
HandlerMapping, HandlerAdapter, ViewResolver, ModelAndView ๋ฑ ๊ฐ ๊ตฌ์ฑ ์์์ ์ญํ ์ ์ค์ต์ ํตํด ํ์ธํ ์ ์์๋ค.
๐ถ View ๊ตฌ์ฑ๊ณผ Tiles ํ์ฉ
ViewResolver๋ฅผ ํตํด ์ปจํธ๋กค๋ฌ์์ ๋ฐํํ ๋ฌธ์์ด์ด ์ค์ JSP ํ์ผ๋ก ๋งคํ๋๋ ๊ตฌ์กฐ๋ฅผ ์ดํดํ๊ณ ,
Tiles ์ค์ ์ ํตํด ๊ณตํต ๋ ์ด์์์ ๋ถ๋ฆฌํ๊ณ , header/footer/body ๋ฑ์ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ๋ ๋ฐฉ๋ฒ๋ ๋ฐฐ์ ๋ค.
๋ ์ด์์ ๊ตฌ์กฐ๋ฅผ ๋ฐ๋ณต ์์ฑํ์ง ์๊ณ ์ฌ์ฌ์ฉํ ์ ์์ด์, ํ๋ก์ ํธ ๊ตฌ์กฐ ๊ด๋ฆฌ์ ์ ๋ฆฌํ๋ค๋ ์ ์ด ์ธ์ ๊น์๋ค.
๐งก ๋๋ ์
์ค๋์ Spring WebMVC์ ํต์ฌ ๊ตฌ์กฐ๋ฅผ ์ค์ต์ ํตํด ์ง์ ์ตํ๋ณผ ์ ์์๋ค.
์ด์ ์ ๋ฐฐ์ด JSP/Servlet ๊ธฐ๋ฐ MVC ํ๋ฆ๋ณด๋ค Spring WebMVC๋ ํจ์ฌ ๋ ๊ตฌ์กฐ์ ์ด๊ณ ํธ๋ฆฌํ๊ฒ ๋๊ปด์ก๊ณ ,
ํนํ DispatcherServlet์ด ๋ชจ๋ ์์ฒญ์ ์ค์ฌ์์ ๋ฐ์ ์ฒ๋ฆฌํ๋ ๋ฐฉ์์ด ๋์ ์ ๋ค์ด์๋ค.
Spring์ด ์ ์ ์ต์ํด์ง๋ฉด์, ๋จ์ํ ๊ธฐ๋ฅ ๊ตฌํ์ ๋์ด์ ๊ตฌ์กฐ์ ์ธ ์ค๊ณ์ ์ค์์ฑ์ ๋ํด ์กฐ๊ธ์ฉ ๊ฐ์ ์ก์๊ฐ๋ ์ค์ด๋ค.
๋ค์ ์์ ์์๋ ๋ณธ๊ฒฉ์ ์ผ๋ก ์ด ๊ตฌ์กฐ๋ฅผ ํ์ฉํ ํ๋ก์ ํธ๋ฅผ ์งํํ๊ฒ ๋ ๊ฒ ๊ฐ์, ๊ธฐ๋๊ฐ ๋ง์ด ๋๋ค. ๐