Inflearn brand logo image
Inflearn brand logo image
์ฑ„๋„ํ†ก ์•„์ด์ฝ˜
BEST

์Šคํ”„๋ง MVC 1ํŽธ - ๋ฐฑ์—”๋“œ ์›น ๊ฐœ๋ฐœ ํ•ต์‹ฌ ๊ธฐ์ˆ 

์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•  ๋•Œ ํ•„์š”ํ•œ ๋ชจ๋“  ์›น ๊ธฐ์ˆ ์„ ๊ธฐ์ดˆ๋ถ€ํ„ฐ ์ดํ•ดํ•˜๊ณ , ์™„์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์Šคํ”„๋ง MVC์˜ ํ•ต์‹ฌ ์›๋ฆฌ์™€ ๊ตฌ์กฐ๋ฅผ ์ดํ•ดํ•˜๊ณ , ๋” ๊นŠ์ด์žˆ๋Š” ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๋กœ ์„ฑ์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Thumbnail
๊น€์˜ํ•œ๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€

์Šคํ”„๋ง ๋ถ€ํŠธ ๊ฐ•์˜ ์ง„ํ–‰ ์ƒํ™ฉ์„ ๊ณต์œ ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š” ์—ฌ๋Ÿฌ๋ถ„ ๊น€์˜ํ•œ์ž…๋‹ˆ๋‹ค. ์ƒˆํ•ด ๋ณต ๋งŽ์ด ๋ฐ›์œผ์„ธ์š”.

์Šคํ”„๋ง ๋ถ€ํŠธ ๊ฐ•์˜ ๊ด€๋ จํ•ด์„œ ์ตœ๊ทผ ๋งŽ์€ ๋ถ„๋“ค์ด ๋ฌธ์˜ํ•ด์ฃผ์…”์„œ ํ˜„์žฌ ์ง„ํ–‰์ƒํ™ฉ์„ ๋ง์”€๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

ํ˜„์žฌ 90% ์ •๋„ ๊ฐ•์˜ ์ž๋ฃŒ๊ฐ€ ์ค€๋น„๋˜์—ˆ๊ณ , ๊ฒ€์ˆ˜, ์ดฌ์˜, ํŽธ์ง‘๋“ฑ์„ ๊ณ ๋ คํ•˜๋ฉด ์•ž์œผ๋กœ 1๋‹ฌ ~ 2๋‹ฌ ์•ˆ์œผ๋กœ๋Š” ์ถœ์‹œํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒ๋ฉ๋‹ˆ๋‹ค.

์ž‘๋…„ ์ค‘์ˆœ๋ถ€ํ„ฐ ์‹œ์ž‘ํ–ˆ์œผ๋‹ˆ, ์Šคํ”„๋ง ๋ถ€ํŠธ ๊ฐ•์˜๋ฅผ ์ค€๋น„ํ•œ์ง€ ๋ฒŒ์จ 7๊ฐœ์›”์ด ๋˜์—ˆ๋„ค์š”. ์—ด์‹ฌํžˆ ์ค€๋น„ํ•˜๊ณ  ์žˆ์œผ๋‹ˆ ๊ธฐ๋Œ€ํ•ด์ฃผ์„ธ์š”. ์‹ค๋ฌด์— ํ•„์š”ํ•œ ์Šคํ”„๋ง ๋ถ€ํŠธ๋Š” ์ด ๊ฐ•์˜ ํ•˜๋‚˜๋กœ ์ •๋ฆฌํ•ด๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

๊ฐ•์˜๋ช…: ์Šคํ”„๋ง ๋ถ€ํŠธ
์˜คํ”ˆ ์˜ˆ์ •์ผ: 2์›” ๋ง ~ 3์›” ์ค‘
๊ฐ•์˜ ์ˆ˜: 100๊ฐ•
๊ฐ•์˜ ์ž๋ฃŒ PDF: 250์žฅ

๊ฐ•์˜ ๋‚ด์šฉ

์Šคํ”„๋ง ๋ถ€ํŠธ๋Š” ๋งค์šฐ ํŽธ๋ฆฌํ•˜์ง€๋งŒ ๋„ˆ๋ฌด ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋ฌด์ž‘์ • ๋„“๊ฒŒ ๋ฐฐ์›Œ๋„ ์•ˆ๋˜๊ณ , ๋˜ ๋„ˆ๋ฌด ๊นŠ์ด์žˆ๊ฒŒ ๋“ค์–ด๊ฐ€๋„ ์‹ค๋ฌด์— ํฌ๊ฒŒ ๋„์›€์ด ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์‹ค๋ฌด์—์„œ ์ค‘์š”ํ•˜๊ฒŒ ์ƒ๊ฐํ•˜๋Š” ํ•ต์‹ฌ ์›๋ฆฌ์™€ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋Šฅ ์œ„์ฃผ๋กœ ๊ฐ•์˜๋ฅผ ์ค€๋น„ํ–ˆ์Šต๋‹ˆ๋‹ค. ํฌ๊ฒŒ ์ค‘์š”ํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ ์‹ค๋ฌด์—์„œ ์ž์ฃผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ธฐ๋Šฅ์€ ๊ณผ๊ฐํ•˜๊ฒŒ ์ œ์™ธํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋งŽ์€ ๋ถ„๋“ค์ด ๊ถ๊ธˆํ•ดํ•˜์‹œ๋Š” ์Šคํ”„๋ง ๋ถ€ํŠธ๋ฅผ ํ™œ์šฉํ•œ ํšจ๊ณผ์ ์ธ ๋ชจ๋‹ˆํ„ฐ๋ง ๋ฐฉ๋ฒ•๋„ ํ•จ๊ป˜ ํฌํ•จํ–ˆ์Šต๋‹ˆ๋‹ค.

์Šคํ”„๋ง ๋ถ€ํŠธ ๊ฐ•์˜ ์ „์ฒด ๋ชฉ์ฐจ

1. ์Šคํ”„๋ง ๋ถ€ํŠธ ์†Œ๊ฐœ
2. ์Šคํ”„๋ง ๋ถ€ํŠธ์™€ ์›น ์„œ๋ฒ„
3. ์Šคํ”„๋ง ๋ถ€ํŠธ ์Šคํƒ€ํ„ฐ์™€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๊ด€๋ฆฌ
4. ์ž๋™ ์„ค์ •(Auto Configuration)
5. ์™ธ๋ถ€ ์„ค์ •๊ณผ ํ”„๋กœํ•„
6. ์Šคํ”„๋ง ๋ถ€ํŠธ ์•ก์ธ„์—์ดํ„ฐ
7. ๋งˆ์ดํฌ๋กœ๋ฏธํ„ฐ, ํ”„๋กœ๋ฉ”ํ…Œ์šฐ์Šค, ๊ทธ๋ผํŒŒ๋‚˜๋ฅผ ํ™œ์šฉํ•œ ๋ชจ๋‹ˆํ„ฐ๋ง
8. ๋ชจ๋‹ˆํ„ฐ๋ง ํ™œ์šฉ

์Šคํ”„๋ง ๋ถ€ํŠธ ๊ฐ•์˜ ์†Œ๊ฐœ

์Šคํ”„๋ง ๋ถ€ํŠธ์™€ ์›น ์„œ๋ฒ„

์˜ค๋žœ ๊ณผ๊ฑฐ๋กœ ๋Œ์•„๊ฐ€์„œ ํ†ฐ์บฃ ๊ฐ™์€ ์›น ์„œ๋ฒ„๋ฅผ ์ง์ ‘ ์„ค์น˜ํ•˜๊ณ  ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ WAR ํŒŒ์ผ๋กœ ๋นŒ๋“œํ•ด์„œ ๋ฐฐํฌํ•˜๋Š” ๋ฐฉ๋ฒ•๋ถ€ํ„ฐ, ์ง€๊ธˆ์ฒ˜๋Ÿผ ์Šคํ”„๋ง ๋ถ€ํŠธ์™€ ๋‚ด์žฅ ํ†ฐ์บฃ์„ ์‚ฌ์šฉํ•ด์„œ JAR ํŒŒ์ผ ํ•˜๋‚˜๋กœ ํŽธ๋ฆฌํ•˜๊ฒŒ ์›น ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋‹จ๊ณ„๋ณ„๋กœ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์–ด๋–ค ์ด์œ ๋กœ ์ด๋ ‡๊ฒŒ ๋ฐœ์ „ํ•ด์™”๋Š”์ง€ ์ดํ•ดํ•˜๊ณ , ๊ทธ ๊ณผ์ •์†์—์„œ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์Šคํ”„๋ง ๋ถ€ํŠธ๊ฐ€ ํฌํ•จํ•˜๊ณ  ์žˆ๋Š” ๋‚ด์žฅ ์„œ๋ฒ„๊ฐ€ ์–ด๋–ป๊ฒŒ ๋™์ž‘ํ•˜๋Š”์ง€ ์›๋ฆฌ๋ฅผ ์ดํ•ดํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

์Šคํ”„๋ง ๋ถ€ํŠธ ์Šคํƒ€ํ„ฐ์™€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๊ด€๋ฆฌ

๋‹ค์–‘ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋“ค์„ ์ง์ ‘ ์„ ํƒํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์˜ ์–ด๋ ค์›€์„ ์•Œ์•„๋ณด๊ณ , ์Šคํ”„๋ง ๋ถ€ํŠธ๊ฐ€ ์ด๋Ÿฐ ๋ฌธ์ œ์ ์„ ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ•˜๋Š”์ง€ ์•Œ์•„๋ด…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์Šคํ”„๋ง ๋ถ€ํŠธ ์Šคํƒ€ํ„ฐ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๋Œ€ํ•ด์„œ๋„ ์•Œ์•„๋ด…๋‹ˆ๋‹ค.

์ž๋™ ์„ค์ •(Auto Configuration)

์Šคํ”„๋ง ๋ถ€ํŠธ๋Š” ์ˆ˜ ๋งŽ์€ ๊ธฐ๋Šฅ์„ ์ž๋™ํ™”ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ ์ค‘์—์„œ ๊ฐ€์žฅ ๋Œ€ํ‘œ์ ์ธ ๊ธฐ๋Šฅ์ด ๋ฐ”๋กœ ์ž๋™ ์„ค์ •(Auto Configuration) ์ž…๋‹ˆ๋‹ค.

์ด ๊ธฐ๋Šฅ ๋•๋ถ„์— ๊ฐœ๋ฐœ์ž๋Š” ์ˆ˜ ๋งŽ์€ ์Šคํ”„๋ง ๋นˆ๋“ค์„ ์ง์ ‘ ๋“ฑ๋กํ•˜์ง€ ์•Š์•„๋„ ๋ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์–ด๋–ค ์›๋ฆฌ๋กœ ์ž๋™ ์„ค์ •์ด ๋˜๋Š”์ง€ ์ดํ•ดํ•˜์ง€ ๋ชปํ•˜๋ฉด, ์Šคํ”„๋ง ๋ถ€ํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋‹ค ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ, ๊ทผ๋ณธ์ ์ธ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์–ด๋ ต์Šต๋‹ˆ๋‹ค.

๊ฐ•์˜์—์„œ๋Š” ์Šคํ”„๋ง ๋ถ€ํŠธ์˜ ํ•ต์‹ฌ ๊ธฐ๋Šฅ์ด๋ผ ํ•  ์ˆ˜ ์žˆ๋Š” ์ž๋™ ์„ค์ •์˜ ์›๋ฆฌ๋ฅผ ์˜ˆ์ œ๋ฅผ ํ†ตํ•ด์„œ ์†์‰ฝ๊ฒŒ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด๋Ÿฌํ•œ ์ž๋™ ์„ค์ •์„ ์ง์ ‘ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์•Œ์•„๋ด…๋‹ˆ๋‹ค.

์™ธ๋ถ€ ์„ค์ •๊ณผ ํ”„๋กœํ•„

์Šคํ”„๋ง ๋ถ€ํŠธ ์—†์ด ์ง์ ‘ ์™ธ๋ถ€ ์„ค์ •์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด์„œ OS ํ™˜๊ฒฝ๋ณ€์ˆ˜, ์ž๋ฐ” ์‹œ์Šคํ…œ ์†์„ฑ, ์ปค๋งจ๋“œ ๋ผ์ธ ์ธ์ˆ˜๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ด…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด๋ ‡๊ฒŒ ์ง์ ‘ ์™ธ๋ถ€ ์„ค์ •์„ ์‚ฌ์šฉํ•  ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ์ ๋“ค์„ ์•Œ์•„๋ณด๊ณ , ์Šคํ”„๋ง ๋ถ€ํŠธ๊ฐ€ ์ด๋Ÿฐ ๋ฌธ์ œ์ ๋“ค์„ ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ•˜๋Š”์ง€ ๋‹จ๊ณ„๋ณ„๋กœ ํ•˜๋‚˜ํ•˜๋‚˜ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค. ๋” ๋‚˜์•„๊ฐ€์„œ Environment, @Value, @ConfigurationProperties์˜ ๋“ฑ์žฅ ์ด์œ ์™€ ํ™œ์šฉ๋ฒ•๋„ ์˜ˆ์ œ๋ฅผ ํ†ตํ•ด ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค.

์Šคํ”„๋ง ๋ถ€ํŠธ ์•ก์ธ„์—์ดํ„ฐ

์‹ค์ œ ์šด์˜ ํ™˜๊ฒฝ์—์„œ ์„œ๋น„์Šค๋ฅผ ์šด์˜ํ•˜๋ ค๋ฉด ๋‹จ์ˆœํžˆ ๊ธฐ๋Šฅ ์š”๊ตฌ์‚ฌํ•ญ์„ ๋„˜์–ด์„œ, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋Š” ๋ถ€๋ถ„์ด ๋งค์šฐ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ์Šคํ”„๋ง ๋ถ€ํŠธ ์•ก์ธ„์—์ดํ„ฐ๊ฐ€ ์ œ๊ณตํ•˜๋Š” ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ๊ณผ ๋˜ ๋ชจ๋‹ˆํ„ฐ๋ง ๊ธฐ๋Šฅ์„ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค.

๋งˆ์ดํฌ๋กœ๋ฏธํ„ฐ, ํ”„๋กœ๋ฉ”ํ…Œ์šฐ์Šค, ๊ทธ๋ผํŒŒ๋‚˜๋ฅผ ํ™œ์šฉํ•œ ๋ชจ๋‹ˆํ„ฐ๋ง

"์ „ํˆฌ์—์„œ ์‹คํŒจํ•œ ์ง€ํœ˜๊ด€์€ ์šฉ์„œํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๊ฒฝ๊ณ„์—์„œ ์‹คํŒจํ•˜๋Š” ์ง€ํœ˜๊ด€์€ ์šฉ์„œํ•  ์ˆ˜ ์—†๋‹ค"๋ผ๋Š” ๋ง์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์„ ์„œ๋น„์Šค๋ฅผ ์šด์˜ํ•˜๋Š” ๊ฐœ๋ฐœ์ž์—๊ฒŒ ๋น„์ถ”์–ด ๋ณด๋ฉด ์žฅ์• ๋Š” ์–ธ์ œ๋“ ์ง€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ๊ทธ๋งŒํผ ๋ชจ๋‹ˆํ„ฐ๋ง์„ ์ž˜ ํ•ด์•ผ ํ•œ๋‹ค๋Š” ๋œป์ž…๋‹ˆ๋‹ค.

์ตœ๊ทผ ์‹ค๋ฌด์—์„œ ์ฃผ๋กœ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ๋ชจ๋‹ˆํ„ฐ๋ง ํˆด์ธ ํ”„๋กœ๋ฉ”ํ…Œ์šฐ์Šค์™€ ๊ทธ๋ผํŒŒ๋‚˜๋ฅผ ํ™œ์šฉํ•ด์„œ ์–ด๋–ป๊ฒŒ ๋ชจ๋‹ˆํ„ฐ๋ง ํ™˜๊ฒฝ์„ ๊ตฌ์ถ•ํ•˜๋Š”์ง€ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ๊ตฌ์ถ•ํ•œ ๋ชจ๋‹ˆํ„ฐ๋ง ํ™˜๊ฒฝ์—์„œ ์‹ค์ œ CPU, ๋ฉ”๋ชจ๋ฆฌ, DB ์ปค๋„ฅ์…˜ ์‚ฌ์šฉ์„ ๋Š˜๋ ค๊ฐ€๋ฉด์„œ ๋ชจ๋‹ˆํ„ฐ๋ง ํˆด์„ ํ†ตํ•ด ๋ฌธ์ œ๋ฅผ ํŒŒ์•…ํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์•Œ์•„๋ด…๋‹ˆ๋‹ค.

๋ชจ๋‹ˆํ„ฐ๋ง ํ™œ์šฉ

๋ชจ๋‹ˆํ„ฐ๋ง์— ํ•„์š”ํ•œ ์ง€ํ‘œ๋ฅผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ง์ ‘ ์‹ฌ๊ณ  ๋ชจ๋‹ˆํ„ฐ๋ง ๋Œ€์‹œ๋ณด๋“œ๋ฅผ ํ†ตํ•ด์„œ ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ๋งˆ์ดํฌ๋กœ๋ฏธํ„ฐ๋ผ๋Š” ํŽธ๋ฆฌํ•œ ํˆด์„ ํ†ตํ•ด์„œ ์• ๋…ธํ…Œ์ด์…˜ ํ•˜๋‚˜๋กœ ์ถ”์ ํ•˜๊ณ  ์‹ถ์€ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์˜ ํ˜ธ์ถœ ์ˆ˜, ํ‰๊ท  ์‹คํ–‰ ์‹œ๊ฐ„, ์ตœ๋Œ€ ์‹คํ–‰ ์‹œ๊ฐ„์„ ์ธก์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์•Œ์•„๋ด…๋‹ˆ๋‹ค.

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๋Œ“๊ธ€