๐ก
1. ๋์คํจ์ฒ ์๋ธ๋ฆฟ์ ๋ํด์ ์์ ๋ณด์.
2. ๋ฉ์์ง ์ปจ๋ฒํฐ์ ๋ทฐ ๋ฆฌ์กธ๋ฒ๋ฅผ ๊ธฐ์ตํด ๋ณด์.
์คํ๋ง ๋ถํธ ๊ทธ๋ฆผ์ผ๋ก ์์ฝํ ์์ฒญ๊ณผ ์๋ต์ ํ๋ฆ ์ดํด ๋ณด๊ธฐ
- ํด๋ผ์ด์ธํธ ์ธก์์ /user๋ก GET ์์ฒญ์ ํฉ๋๋ค. ์ด ์์ฒญ์ ํฐ์บฃ์ ๊ฑฐ์ณ ์คํ๋ง ๋ถํธ ์ ํ๋ฆฌ์ผ์ด์ ์ผ๋ก ์ ๋ฌ๋ฉ๋๋ค.
- ์ด๋, ์คํ๋ง ๋ถํธ์ **๋์คํจ์ฒ ์๋ธ๋ฆฟ(DispatcherServlet)**์ด ์์ฒญ์ ๋ฐ์ต๋๋ค. ๋์คํจ์ฒ ์๋ธ๋ฆฟ์ ์์ฒญ๋ URL์ ๋ถ์ํ๊ณ , ์ด๋ฅผ ์ฒ๋ฆฌํ ์ ์๋ ์ปจํธ๋กค๋ฌ์ ํด๋น ๋ฉ์๋๋ฅผ ์ฐพ์ต๋๋ค.
- ์ปจํธ๋กค๋ฌ์์ ๋น์ฆ๋์ค ๋ก์ง์ด ํ์ํ ๊ฒฝ์ฐ, ๋น์ฆ๋์ค ๊ณ์ธต(Service) ๋ฐ ํผ์์คํด์ค ๊ณ์ธต(Repository)์ ํตํด ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค.
- ์๋ต ๊ณผ์ ์์ MIME ํ์
(์: JSON, HTML, XML ๋ฑ)์ ๋ฐ๋ผ ๋ค์๊ณผ ๊ฐ์ด ์๋ต ๋ฐฉ์์ด ๋ฌ๋ผ์ง๋๋ค:
- JSON, XML ๋ฑ ๋ฐ์ดํฐ ํฌ๋งท์ผ๋ก ์๋ตํด์ผ ํ๋ ๊ฒฝ์ฐ, ๋ฉ์์ง ์ปจ๋ฒํฐ๊ฐ ์๋ํฉ๋๋ค. ์๋ฅผ ๋ค์ด, @ResponseBody๊ฐ ๋ถ์ ๋ฉ์๋๋ ๋ฉ์์ง ์ปจ๋ฒํฐ๋ฅผ ์ฌ์ฉํ์ฌ ์๋ฐ ๊ฐ์ฒด๋ฅผ JSON ๋๋ XML๋ก ๋ณํํฉ๋๋ค.
- HTML ๋ฑ์ ๋ทฐ ํ ํ๋ฆฟ์ด ํ์ํ ๊ฒฝ์ฐ, **๋ทฐ ๋ฆฌ์กธ๋ฒ(View Resolver)**๊ฐ ์๋ํ์ฌ, ํ ํ๋ฆฟ ์์ง(์: Thymeleaf, JSP)์ ํตํด HTML ๋ฌธ์๋ฅผ ์์ฑํ์ฌ ํด๋ผ์ด์ธํธ์๊ฒ ๋ฐํํฉ๋๋ค.