์๋ฆฌ๋ฅผ ์์์ผ ํต์ฌ์ด ๋ณด์ธ๋ค!
๊น์ํ์ ์คํ๋ง MVC ๊ธฐ๋ณธํธ ๐จโ๐ป
๐ ์๊ฐ ์ ํ์ธํด์ฃผ์ธ์!
- ๋ณธ ๊ฐ์๋ ์๋ฐ ์คํ๋ง ์์ ์ ๋ณต ์๋ฆฌ์ฆ์ ๋ค ๋ฒ์งธ ๊ฐ์์
๋๋ค. ์ฐ์ํํ์ ๋ค ์ต์ฐ์ ๊ธฐ์ ์ด์ฌ ๊น์ํ์ ์คํ๋ง ์์ ์ ๋ณต ๋ก๋๋งต์ ๋จผ์ ํ์ธํด์ฃผ์ธ์. (๋ฐ๋ก๊ฐ๊ธฐ)
๊ฐ์ฅ ์ธ๊ธฐ ์๋ ์น ํ๋ ์์ํฌ

ํ๋์ ์ ํ๋ฆฌ์ผ์ด์
์ ๋๋ถ๋ถ ์น ํ๊ฒฝ์์ ๋์ํ๋ ์น ์ ํ๋ฆฌ์ผ์ด์
์
๋๋ค. ์๋ฐ ๋ฐฑ์๋ ๊ฐ๋ฐ์๋ ์ด๋ฌํ ์น ์ ํ๋ฆฌ์ผ์ด์
์ ๊ฐ๋ฐํ ๋, ๋๋ถ๋ถ ์คํ๋ง MVC๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์คํ๋ง MVC๋ ๋ณต์กํ ์น ์ ํ๋ฆฌ์ผ์ด์
์ ์ฝ๊ณ ๋น ๋ฅด๊ฒ ๊ฐ๋ฐํ ์ ์๊ฒ ๋์์ฃผ๋, ๊ฐ์ฅ ์ธ๊ธฐ ์๋ ์น ํ๋ ์์ํฌ์
๋๋ค.
๋ฐฑ์๋ ์น ๊ธฐ์ ์ ํ์ตํ๊ธฐ ์ด๋ ค์ด ์ด์

์๋ฐ ๋ฐฑ์๋(Java Backend) ์น ๊ธฐ์ ์ ๋งค์ฐ ๋ฐฉ๋ํ๊ณ ๊ณต๋ถํ ๋ถ๋๋ ๋ง์ต๋๋ค. ํนํ ์คํ๋ง MVC๋ ์ ๊ณตํ๋ ๊ธฐ๋ฅ๋ ๋ง๊ณ , ๊ตฌ์กฐ๋ ๋ณต์กํฉ๋๋ค. ์ด๋ฐ ์น ๊ธฐ์ ์ ํ์ตํ๊ธฐ ์ด๋ ค์ด ์ด์ ๋ ๋ค์ 3๊ฐ์ง ๋๋ฌธ์
๋๋ค.
1. HTTP ๊ธฐ๋ฐ ์ง์์ด ์ฝํ๋ค
๋ชจ๋ ์น ๊ธฐ์ ์ HTTP๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค. ๋ฐ๋ผ์ HTTP ๊ธฐ๋ฐ ์ง์์ด ์ฝํ๋ฉด ์น ๊ธฐ์ ์ ๊น์ด์๊ฒ ํ์ตํ๊ธฐ ์ด๋ ต์ต๋๋ค. HTTP ๊ธฐ๋ฐ ์ง์์ด ์ฝํ๋ค๋ฉด ์ด ๊ฐ์๋ฅผ ํ์ตํ๊ธฐ ์ ์ ๋จผ์ ๋ชจ๋ ๊ฐ๋ฐ์๋ฅผ ์ํ HTTP ์น ๊ธฐ๋ณธ ์ง์ ๊ฐ์๋ฅผ ํ์ตํ๊ธฐ ๋ฐ๋๋๋ค.
์ค๋ฌด ๊ฐ๋ฐ์ ๊ผญ ํ์ํ HTTP์ ํต์ฌ
2. ์๋ฐ ๋ฐฑ์๋ ์น ๊ฐ๋ฐ์ ์ญ์ฌ๊ฐ ๋๋ฌด ์ค๋ ๋์๋ค
์๋ฐ ๋ฐฑ์๋ ์น ๊ฐ๋ฐ์ ์ญ์ฌ๋ ์ด๋ฏธ 20๋
์ด ๋์์ต๋๋ค. ์ค๋์๊ฐ ๋์ ๋ถํธํ ์ ๋ค์ ๊ฐ์ ํ๊ณ , ๋ฐ์ ํ๋ฉด์ ๋๋ฌด ๋ง์ ๊ฒ์ด ์๋ํ ๋๊ณ , ์ถ์ํ ๋์์ต๋๋ค.
ํนํ ์ต๊ทผ์ ์น ๊ฐ๋ฐ์ ์์ํ ๊ฐ๋ฐ์๋ค์ ์น ํ๋ ์์ํฌ๊ฐ ์ ๊ณตํ๋ ๊ธฐ๋ฅ๋ค์ ์ฌ์ฉํ ๋, ์ ์ด๋ฐ ๋ฐฉ์์ผ๋ก ๊ธฐ๋ฅ์ ์ ๊ณตํ๋์ง ์ ํํ ์ด์ ๋ฅผ ๋ชจ๋ฅด๊ณ ๋จ์ ์ฌ์ฉ๋ฒ ์์ฃผ๋ก ํ์ตํ๊ฒ ๋ฉ๋๋ค. โ์ ์ด๋ฐ ๋ฐฉ์์ผ๋ก ์ฌ์ฉํ์ง?โ ํ๊ณ ์๋ฌธ์ ๊ฐ์ ธ๋ ๊ณผ๊ฑฐ์ ์ด๋ค ๋ถํธํ ๋ฌธ์ ๋๋ฌธ์ ์ง๊ธ ์ด๋ฐ ๋ฐฉ์์ผ๋ก ๊ฐ์ ๋๊ณ ์ฌ์ฉํ๋์ง, ๊ณผ๊ฑฐ์ ๋ฌธ๋งฅ์ ์ ๋๋ก ์ดํดํ๊ณ ์ฌ์ฉํ๊ธฐ๋ ์ด๋ ต์ต๋๋ค.
3. ์คํ๋ง MVC๊ฐ ์ ๊ณตํ๋ ๊ธฐ๋ฅ์ด ๋๋ฌด ๋ฐฉ๋ํ๋ค
์คํ๋ง MVC๋ ๋ฐฑ์๋ ์น ๊ธฐ์ ์ ํ์ํ ๊ฑฐ์ ๋ชจ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ๊ทธ๋งํผ ๋ฐฉ๋ํ๊ณ , ํ์ตํ ๋ด์ฉ๋ ๋ง์ต๋๋ค. ์๋ฐ ๋ฐฑ์๋ ์น ๊ธฐ์ ์ ๋ฐ์ ๊ณผ ํจ๊ป ์คํ๋ง MVC๋ ์๋ง์ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋๊ณ ๋ฐ์ ํ์ต๋๋ค. ํ์ง๋ง ์คํ๋ง MVC ํ๋ ์์ํฌ์ ๊ธฐ๋ณธ ๊ตฌ์กฐ๋ ํํํ๊ฒ ์ ์ค๊ณ๋์ด์, ์ง๊ธ๊น์ง ์๋ง์ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋์ด๋ ๊ทธ ๊ธฐ๋ณธ ๊ตฌ์กฐ๋ ๊ฑฐ์ ๋ณํ์ง ์์์ต๋๋ค. ๋ฐ๋ผ์ ์คํ๋ง MVC์ ๊ธฐ๋ณธ ๊ตฌ์กฐ๋ฅผ ํ์คํ๊ฒ ์ดํดํ๋ ๊ฒ์ด ๋งค์ฐ ์ค์ํฉ๋๋ค.
๊ฐ์ ํน์ง

์๋ฐ ์น ๊ธฐ์ ์ ์์๋ถํฐ ์ต์ ์ค๋ฌด ๊ธฐ์ ๊น์ง
์ด ๊ฐ์๋ 20๋
์ ์ผ๋ก ๋์๊ฐ๋๋ค. ์๋ฐ ์น ๊ธฐ์ ์ ๊ธฐ์ด๋ผ ํ ์ ์๋ ์๋ธ๋ฆฟ๋ถํฐ ์์ํด์ JSP, MVC ํจํด, MVC ํ๋ ์์ํฌ, ๊ทธ๋ฆฌ๊ณ ์คํ๋ง MVC์ ํ์๋ถํฐ ์ค๋ฌด์์ ์ฃผ๋ก ์ฌ์ฉํ๋ ์ต์ ์คํ๋ง MVC์ ์ฌ์ฉ๋ฒ๊น์ง, ๋ชจ๋ ๊ฒ์ ์ฝ๋๋ก ์ฌ๋ฌ๋ถ๊ณผ ํจ๊ป ๋ง๋ค์ด๋ณด๋ฉด์ ๋จ๊ณ์ ์ผ๋ก ์์๊ฐ๋๋ค. ๊ณผ๊ฑฐ์ ์ด๋ค ๋ถํธํ ์ ์ด ์์ด์ ๋ค์ ๊ธฐ์ ์ด ํ์ํ๊ณ , ์ด๋ค ์ ๋ค์ด ๊ฐ์ ๋์๋์ง ๊ทธ ์ด์ ๋ฅผ ์ง์ ์ฝ๋ฉํ๋ฉด์ ์์ฐ์ค๋ฝ๊ฒ ์ดํดํ ์ ์์ต๋๋ค.
MVC ํ๋ ์์ํฌ๋ฅผ ์ง์ ์ฝ๋๋ก ๊ฐ๋ฐ
์คํ๋ง์ผ๋ก ์น ์ ํ๋ฆฌ์ผ์ด์
์ ์ ๋๋ก ๊ฐ๋ฐํ๋ ค๋ฉด, ์คํ๋ง MVC์ ํต์ฌ ๊ตฌ์กฐ๋ฅผ ํ๋ฒ์ ์ ๋๋ก ํ์
ํด์ผ ํฉ๋๋ค. ๊ทธ๋ฐ๋ฐ ์คํ๋ง MVC์๋ ์ ๋ง์ ๊ธฐ๋ฅ์ด ์๋ํ๋๊ณ , ์ถ์ํ๋์ด ์๊ธฐ ๋๋ฌธ์ ํต์ฌ ๊ตฌ์กฐ๋ฅผ ํ์
ํ๊ธฐ๊ฐ ์ฝ์ง ์์ต๋๋ค.
์ฌ๋ฌ๋ถ๊ณผ ์ ๋ ์คํ๋ง ์์ด ์ง์ ์คํ๋ง MVC์ ํต์ฌ ๊ธฐ๋ฅ์ ๋ง๋ค์ด๋ด
๋๋ค. ๋จ์ํ ๋จธ๋ฆฌ๋ก MVC ํ๋ ์์ํฌ๋ฅผ ์ดํดํ๋ ๊ฒ์ด ์๋๋ผ, ์์ ํ ์ฒ์๋ถํฐ MVC ํ๋ ์์ํฌ๋ฅผ ์๋ก ๊ฐ๋ฐํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋จ๊ณ์ ์ผ๋ก MVC ํ๋ ์์ํฌ๋ฅผ ๋ฐ์ ์์ผ ๋๊ฐ๋ ๊ณผ์ ์ ํตํด ์์ฐ์ค๋ฝ๊ฒ ์คํ๋ง MVC์ ๋ด๋ถ ๊ตฌ์กฐ๊ฐ ์ ์ด๋ ๊ฒ ์ค๊ณ๋์๋์ง ๊น์ด์๊ฒ ์ดํดํ ์ ์์ต๋๋ค.
๊ฐ์ ๋ชฉํ

- ๋ชฉํ: ์ค๋ฌด ๋ฐฑ์๋ ์น ์ ํ๋ฆฌ์ผ์ด์
์ ๊ฐ๋ฐํ ๋ ํ์ํ ๋ชจ๋ ์น ๊ธฐ์ ์ ์์ฑํ๋ ๊ฒ์ด ์ด ๊ฐ์์ ๋ชฉํ์
๋๋ค.
- ์น ๊ธฐ์ด๋ถํฐ ์ค๋ฌด๊น์ง: ์ค๋ฌด ๊ฐ๋ฐ์ ์ํ ๋ด์ฉ์ด ๋ง์ง๋ง, ์น ์ ํ๋ฆฌ์ผ์ด์
๊ฐ๋ฐ ๊ฒฝํ์ด ์๋ ๊ฐ๋ฐ์๋ ์ ์ํ ์ ์๊ฒ ๋จ๊ณ์ ์ผ๋ก ๊ตฌ์ฑํ์์ต๋๋ค.
- ์๋ฐ ์น ๊ธฐ์ ์ด์ผ๊ธฐ: ์๋ธ๋ฆฟ, JSP ์ฒ๋ผ ์๋ฐ ๊ธฐ๋ณธ ์น ๊ธฐ์ ๋ถํฐ ์์ํด์ ์? ์คํ๋ง MVC๊ฐ ๋์ค๊ฒ ๋์๋์ง๋ฅผ ์ค๋ช
ํฉ๋๋ค.
- ์ค๋ฌด ์์ ์ค์ฌ: ์ค๋ฌด์์ ์คํ๋ง์ผ๋ก ์น ์ ํ๋ฆฌ์ผ์ด์
์ ๊ฐ๋ฐํ ๋ ํ์ํ ๋ชจ๋ ๊ณผ์ ์ ์์ ๋ฅผ ํตํด ์์ฐ์ค๋ฝ๊ฒ ํ์ตํ๋ฉฐ, ์ค๋ฌด ๋ฒ ์คํธ ํ๋ํฐ์ค๋ฅผ ์ ์ํด๋๋ฆฝ๋๋ค.
- ๊ฐ๊ฒฐํจ: ์ค๋ฌด์์ ์ฌ์ฉํ์ง ์๋ ์ค๋๋ ์คํ๋ง MVC ๊ธฐ๋ฅ์ ๊ณผ๊ฐํ๊ฒ ์ ์ธํ์ต๋๋ค. ์ต์ ์ค๋ฌด์ ์ฃผ๋ก ์ฌ์ฉํ๋ ๋ด์ฉ ์ค์ฌ์ผ๋ก ์ค๋ช
ํฉ๋๋ค.
์๋ฐ ์น ๊ธฐ์ ์ ๋ชจ๋ ์ค๋ช
ํ๋ ค๋ฉด ์๋ฐฑ์๊ฐ๋ ๋ถ์กฑํฉ๋๋ค. ์ด ๊ฐ์๋ ๋ชจ๋ ๊ฒ์ ์ค๋ช
ํ๊ธฐ ๋ณด๋ค๋ ์๋ฐ ๋ฐฑ์๋ ์น ๊ฐ๋ฐ์ ํต์ฌ ๋ผ๋๋ฅผ ์ธ์ฐ๊ณ , ๊ทธ ์์ ์ค๋ฌด์ ๊ผญ ํ์ํ ์น ๊ธฐ์ ์ ์์ฃผ๋ก ์ค๋ช
ํฉ๋๋ค. ์ด ๊ฐ์๊ฐ ๋๋๋ฉด ์ฌ๋ฌ๋ถ์ ํผํผํ ๊ธฐ๋ฐ ์ง์์ ๋ฐํ์ผ๋ก ์คํ๋ง ๋ฐฑ์๋ ์น ์ ํ๋ฆฌ์ผ์ด์
์ ์์ ์๊ฒ ๊ฐ๋ฐํ ์ ์์ต๋๋ค.
์คํ๋ง MVC ๊ฐ์ ๊ตฌ์ฑ

์คํ๋ง MVC ๊ฐ์๋ 1, 2ํธ์ผ๋ก ๋๋์ด์ ธ ์์ต๋๋ค.
๋ณธ ๊ฐ์๋ ์คํ๋ง MVC 1ํธ - ๋ฐฑ์๋ ์น ๊ฐ๋ฐ ํต์ฌ ๊ธฐ์ ์
๋๋ค.
์คํ๋ง MVC 1ํธ - ๋ฐฑ์๋ ์น ๊ฐ๋ฐ ํต์ฌ ๊ธฐ์ ํ์ฌ ๊ฐ์
์๋ฐ ์น ๊ธฐ์ ๊ณผ ์คํ๋ง MVC์ ํต์ฌ ๊ฐ๋
์ ๋ค์ง๊ณ , ์คํ๋ง MVC์ ๊ธฐ๋ณธ ๊ธฐ๋ฅ์ ์ดํดํฉ๋๋ค.
1ํธ์ ๋จผ์ ์๋ฐ ๋ฐฑ์๋ ์น ๊ธฐ์ ์ ์๊ฐํ๊ณ , ์๋ธ๋ฆฟ, JSP, MVC ํจํด, MVC ํ๋ ์์ํฌ๊น์ง ์น ๊ธฐ์ ์ ๋ฐ์ ํ์ตํฉ๋๋ค. ์ด๋ ๊ฒ ์น ๊ธฐ์ ์ ๋ฐฐ๊ฒฝ์ ์ดํดํ ๋ค์์ ์คํ๋ง MVC์ ํต์ฌ ๊ฐ๋
์ ๋จ๋จํ ๋ค์ง๋๋ค. ์ดํ ์คํ๋ง MVC์ ๊ธฐ๋ณธ ๊ธฐ๋ฅ ๊ธฐ๋ฅ์ ํ์ตํ๊ณ , ์คํ๋ง MVC๋ฅผ ์ฌ์ฉํด์ ๊ธฐ๋ณธ CRUD๊ฐ ๊ฐ๋ฅํ ์น ํ์ด์ง๋ ๊ฐ๋ฐํฉ๋๋ค.
์คํ๋ง MVC์ ๋ค์ํ ํ์ฉ ๊ธฐ์ ์ ํ์ตํฉ๋๋ค.
2ํธ์ ํ์๋ฆฌํ, ๋ฉ์์ง, ๊ตญ์ ํ, ๊ฒ์ฆ(Validation), ์ฟ ํค, ์ธ์
, ํํฐ, ์ธํฐ์
ํฐ, ์์ธ ์ฒ๋ฆฌ์ ๊ณตํต ๊ธฐ๋ฅ, ํ์ฅ ํฌ์ธํธ ๋ฑ ํ๋์ ์์ ๋ฅผ ์ ์ง์ ์ผ๋ก ๋ฐ์ ์ํค๋ฉด์, ์คํ๋ง MVC์ ๋ค์ํ ํ์ฉ ๊ธฐ์ ์ ์ฝ๋๋ก ํ์ตํฉ๋๋ค.
์์ผ๋ก ์ด์ด์ง
์คํ๋ง ์์ ์ ๋ณต ์๋ฆฌ์ฆ
์คํ๋ง์ ์์ ํ ๋ง์คํฐํ ์ ์๋ ์๋ฆฌ์ฆ๋ฅผ ์ค๋นํ๊ณ ์์ต๋๋ค. ์ค์ ์ค๋ฌด์์ ์ฌ์ฉํ๋ ํต์ฌ ์คํ๋ง ๊ธฐ๋ฅ์ ์ค์ฌ์ผ๋ก, ์ค๋ฌด์์ ์ฐ์ด์ง ์๊ฑฐ๋ ์ค๋๋ ๊ธฐ๋ฅ์ ๊ณผ๊ฐํ๊ฒ ์๋ตํ ์ค๋ฌด ๋
ธํ์ฐ๋ฅผ ์ ์ํด๋๋ฆด ์์ ์
๋๋ค.
๊ฐ์ ์์
์ฐ๊ด ๋ก๋๋งต