S01L03 – ์Šคํ”„๋ง ์›น MVC ์Šคํƒ€ํ„ฐ ํ”„๋กœ์ ํŠธ

html

๊ฐ„๋‹จํ•œ Spring MVC Controller ๊ตฌ์ถ•: ๋‹จ๊ณ„๋ณ„ ๊ฐ€์ด๋“œ

๋ชฉ์ฐจ

  1. ์†Œ๊ฐœ - 1 ํŽ˜์ด์ง€
  2. Spring MVC Starter Project ์„ค์ • - 2 ํŽ˜์ด์ง€
  3. Home Controller ์ƒ์„ฑ - 4 ํŽ˜์ด์ง€
  4. Home View ๋””์ž์ธ - 6 ํŽ˜์ด์ง€
  5. ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰ ๋ฐ ํ…Œ์ŠคํŠธ - 8 ํŽ˜์ด์ง€
  6. ๊ฒฐ๋ก  - 10 ํŽ˜์ด์ง€

---

์†Œ๊ฐœ

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

์ค‘์š”์„ฑ ๋ฐ ๋ชฉ์ 

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

์žฅ์  ๋ฐ ๋‹จ์ 

์žฅ์  ๋‹จ์ 
๋ช…ํ™•ํ•œ ์ฑ…์ž„ ๋ถ„๋ฆฌ ์ดˆ๋ณด์ž์—๊ฒŒ๋Š” ํ•™์Šต ๊ณก์„ ์ด ๊ฐ€ํŒŒ๋ฆ„
๊ด‘๋ฒ”์œ„ํ•œ ๊ธฐ๋Šฅ์„ ๊ฐ–์ถ˜ robust framework ๊ตฌ์„ฑ์ด verboseํ•  ์ˆ˜ ์žˆ์Œ
๊ฐ•๋ ฅํ•œ ์ปค๋ฎค๋‹ˆํ‹ฐ ์ง€์› ๊ฐ„๋‹จํ•œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—๋Š” ๊ณผ๋„ํ•  ์ˆ˜ ์žˆ์Œ
๋‹ค๋ฅธ Spring ๋ชจ๋“ˆ๊ณผ ์›ํ™œํ•˜๊ฒŒ ํ†ตํ•ฉ๋จ ๋‹ค์–‘ํ•œ Spring ๊ฐœ๋…์— ๋Œ€ํ•œ ์ดํ•ด๊ฐ€ ํ•„์š”ํ•จ

Spring MVC๋ฅผ ์–ธ์ œ ์–ด๋””์„œ ์‚ฌ์šฉํ• ๊นŒ

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

---

Spring MVC Starter Project ์„ค์ •

๊ฐœ์š”

Controller ๋ฐ ๋ทฐ๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์ „์— Spring MVC Starter Project๋ฅผ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์ด ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค. ์ด ๊ธฐ์ดˆ ๋‹จ๊ณ„๋Š” ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์ด ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ๊ตฌ์„ฑ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜์—ฌ ํ”„๋กœ์ ํŠธ ์ง„ํ–‰์„ ์›ํ™œํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.

๋‹จ๊ณ„๋ณ„ ๊ฐ€์ด๋“œ

  1. ํ”„๋กœ์ ํŠธ ๋ณต์‚ฌ ์ƒ์„ฑ:
    • ์„ค์ • ๊ณผ์ •์„ ๊ฐ€์†ํ™”ํ•˜๊ธฐ ์œ„ํ•ด ๊ธฐ์กด Spring MVC ํ”„๋กœ์ ํŠธ๋ฅผ ๋ณต์ œํ•˜๋Š” ๊ฒƒ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜์„ธ์š”.
    • ๋ช…ํ™•์„ฑ์„ ์œ„ํ•ด ๋ณต์‚ฌ๋œ ํ”„๋กœ์ ํŠธ ์ด๋ฆ„์„ Spring MVC Starter Project๋กœ ๋ณ€๊ฒฝํ•˜์„ธ์š”.
  2. ํ„ฐ๋ฏธ๋„์—์„œ ํ”„๋กœ์ ํŠธ ์—ด๊ธฐ:
    • ํ”„๋กœ์ ํŠธ ํด๋”๋ฅผ ์šฐํด๋ฆญํ•˜๊ณ  Open in Terminal์„ ์„ ํƒํ•˜์„ธ์š”.
    • Linux ๋ฐ Mac ์‚ฌ์šฉ์ž๋Š” ํ„ฐ๋ฏธ๋„์„ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ† ๋ฆฌ๋กœ ์ด๋™ํ•˜์„ธ์š”.
  3. VS Code์—์„œ ํ”„๋กœ์ ํŠธ ๋กœ๋“œํ•˜๊ธฐ:
    • ํ„ฐ๋ฏธ๋„์—์„œ code . ๋ช…๋ น์„ ์‹คํ–‰ํ•˜์—ฌ Visual Studio Code์—์„œ ํ”„๋กœ์ ํŠธ๋ฅผ ์—ฌ์„ธ์š”.
    • VS Code๋Š” ์ž๋™์œผ๋กœ ํ”„๋กœ์ ํŠธ ํด๋”๋ฅผ ์ฑ„์›Œ ๊ฐœ๋ฐœ ๊ณผ์ •์„ ๊ฐ„์†Œํ™”ํ•ฉ๋‹ˆ๋‹ค.

ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ

ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ๋ฅผ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์€ ํšจ์œจ์ ์ธ ํƒ์ƒ‰๊ณผ ๊ฐœ๋ฐœ์— ๋งค์šฐ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ์•„๋ž˜๋Š” ํ•„์ˆ˜ ํŒŒ์ผ ๋ฐ ๋””๋ ‰ํ† ๋ฆฌ์— ๋Œ€ํ•œ ๊ฐœ์š”์ž…๋‹ˆ๋‹ค:

๋””๋ ‰ํ† ๋ฆฌ/ํŒŒ์ผ ๊ฒฝ๋กœ ์„ค๋ช…
src/main/java/org/studyeasy/SpringStarter/SpringStarterApplication.java ๋ฉ”์ธ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ํด๋ž˜์Šค
src/main/java/org/studyeasy/SpringStarter/Controller/HomeController.java ์š”์ฒญ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ Home Controller
src/main/resources/templates/home.html home ๋ทฐ๋ฅผ ์œ„ํ•œ HTML ํ…œํ”Œ๋ฆฟ
pom.xml ์˜์กด์„ฑ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ Maven ๊ตฌ์„ฑ ํŒŒ์ผ
.vscode/settings.json VS Code ์ „์šฉ ์„ค์ •

๋„๊ตฌ ๋ฐ ์˜์กด์„ฑ

  • Visual Studio Code (VS Code): Java ๊ฐœ๋ฐœ์„ ์ง€์›ํ•˜๋Š” ๋‹ค์žฌ๋‹ค๋Šฅํ•œ ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ.
  • Maven: ํ”„๋กœ์ ํŠธ ์˜์กด์„ฑ์„ ๊ด€๋ฆฌํ•˜๋Š” ๋นŒ๋“œ ์ž๋™ํ™” ๋„๊ตฌ.
  • Spring Framework: MVC ์•„ํ‚คํ…์ฒ˜ ๊ตฌ์ถ•์„ ์œ„ํ•œ ํ•ต์‹ฌ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

---

Home Controller ์ƒ์„ฑ

๊ฐœ์š”

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

๋‹จ๊ณ„๋ณ„ ๊ฐ€์ด๋“œ

  1. Controller ํด๋ž˜์Šค ์ƒ์„ฑ:
    • ํ”„๋กœ์ ํŠธ ๋‚ด Controller ํŒจํ‚ค์ง€๋กœ ์ด๋™ํ•˜์„ธ์š”.
    • ์ƒˆ๋กœ์šด Java ํด๋ž˜์Šค ์ด๋ฆ„์„ HomeController.java๋กœ ์ƒ์„ฑํ•˜์„ธ์š”.
  2. Controller ์ฃผ์„ ์ถ”๊ฐ€:

  • @Controller: ํด๋ž˜์Šค๋ฅผ Spring MVC controller๋กœ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
  • @GetMapping("/home"): HTTP GET ์š”์ฒญ์„ home ๋ฉ”์†Œ๋“œ์— ๋งคํ•‘ํ•ฉ๋‹ˆ๋‹ค.

์ฝ”๋“œ ์„ค๋ช…

๋ฉ”์†Œ๋“œ ์‹œ๊ทธ๋‹ˆ์ฒ˜:

  • Model: ๋ชจ๋ธ ์†์„ฑ์„ ์œ„ํ•œ ํ™€๋”๋ฅผ ์ •์˜ํ•˜๋Š” ์ธํ„ฐํŽ˜์ด์Šค์ž…๋‹ˆ๋‹ค.
  • String: ๋ทฐ์˜ ์ด๋ฆ„(home.html)์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

๋ฆฌํ„ด ๋ฌธ:

  • Spring์—๊ฒŒ home.html ๋ทฐ๋ฅผ ๋ Œ๋”๋งํ•˜๋„๋ก ์ง€์‹œํ•ฉ๋‹ˆ๋‹ค.

๋ณด์ถฉ ์ •๋ณด

  • @Controller: ํด๋ž˜์Šค๊ฐ€ MVC ํŒจํ„ด์—์„œ controller๋กœ ์—ญํ• ์„ ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
  • @GetMapping: GET ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ @RequestMapping์˜ ํŠน์ˆ˜ํ™”๋œ ํ˜•ํƒœ์ž…๋‹ˆ๋‹ค.

---

Home View ๋””์ž์ธ

๊ฐœ์š”

Spring MVC์˜ ๋ทฐ๋Š” ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋ Œ๋”๋งํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ํ™ˆ ํŽ˜์ด์ง€๋ฅผ ํ‘œ์‹œํ•˜๊ธฐ ์œ„ํ•œ ๊ฐ„๋‹จํ•œ home.html ํ…œํ”Œ๋ฆฟ์„ ์ƒ์„ฑํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋‹จ๊ณ„๋ณ„ ๊ฐ€์ด๋“œ

  1. Home View ํŒŒ์ผ ์ƒ์„ฑ:
    • src/main/resources/templates/๋กœ ์ด๋™ํ•˜์„ธ์š”.
    • ์ƒˆ๋กœ์šด HTML ํŒŒ์ผ ์ด๋ฆ„์„ home.html๋กœ ์ƒ์„ฑํ•˜์„ธ์š”.
  2. HTML ํ…œํ”Œ๋ฆฟ ๋””์ž์ธ:

  • DOCTYPE ์„ ์–ธ: ๋ฌธ์„œ ์œ ํ˜•์„ HTML5๋กœ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.
  • ํƒ€์ดํ‹€: ๋ธŒ๋ผ์šฐ์ € ํƒญ์— ํ‘œ์‹œ๋  ํŽ˜์ด์ง€ ์ œ๋ชฉ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ณธ๋ฌธ ๋‚ด์šฉ:
    • h1: ์ฃผ์š” ์ œ๋ชฉ์ž…๋‹ˆ๋‹ค.
    • p: ์ถ”๊ฐ€ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋‹จ๋ฝ์ž…๋‹ˆ๋‹ค.

๋ณด์ถฉ ์ •๋ณด

  • Thymeleaf ํ†ตํ•ฉ:
    • Spring MVC๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ํ…œํ”Œ๋ฆฟ ์—”์ง„์œผ๋กœ Thymeleaf๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
    • ${variable}๊ณผ ๊ฐ™์€ ํ‘œํ˜„์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ๋™์  ์ฝ˜ํ…์ธ  ๋ Œ๋”๋ง์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.

---

์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰ ๋ฐ ํ…Œ์ŠคํŠธ

๊ฐœ์š”

Controller์™€ ๋ทฐ๋ฅผ ์„ค์ •ํ•œ ํ›„ ๋‹ค์Œ ๋‹จ๊ณ„๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•˜๊ณ  ๊ธฐ๋Šฅ์„ ํ™•์ธํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋‹จ๊ณ„๋ณ„ ๊ฐ€์ด๋“œ

  1. Spring ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰:
    • VS Code์—์„œ SpringStarterApplication.java๋กœ ์ด๋™ํ•˜์„ธ์š”.
    • ์šฐํด๋ฆญํ•˜๊ณ  Run as Java Application์„ ์„ ํƒํ•˜์„ธ์š”.
  2. ๋ผ์ด๋ธŒ ์„œ๋ฒ„ ์ ‘์†:
    • ํ„ฐ๋ฏธ๋„์— ์ œ๊ณต๋œ Live Server ๋งํฌ๋ฅผ ํด๋ฆญํ•˜๊ฑฐ๋‚˜ ๋‹จ์ถ•ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.
    • ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๊ธฐ๋ณธ ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ์—ด๋ฆฝ๋‹ˆ๋‹ค.
  3. ํ™ˆ ํŽ˜์ด์ง€ ํ…Œ์ŠคํŠธ:
    • http://localhost:8080/home์œผ๋กœ ์ด๋™ํ•˜์„ธ์š”.
    • "Welcome to the Home Page" ๋ฉ”์‹œ์ง€๊ฐ€ ํ‘œ์‹œ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋ฌธ์ œ ํ•ด๊ฒฐ

  • ๋นˆ ํŽ˜์ด์ง€ ํ‘œ์‹œ๋จ:
    • home.html ํŒŒ์ผ์ด templates ๋””๋ ‰ํ† ๋ฆฌ์— ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ๋ฐฐ์น˜๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”.
    • HomeController๊ฐ€ ์ œ๋Œ€๋กœ ์ฃผ์„ ์ฒ˜๋ฆฌ๋˜๊ณ  ๋งคํ•‘๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”.
  • ์„œ๋ฒ„๊ฐ€ ์‹œ์ž‘๋˜์ง€ ์•Š์Œ:
    • ์ฝ”๋“œ์— ์ปดํŒŒ์ผ ์˜ค๋ฅ˜๊ฐ€ ์—†๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”.
    • pom.xml์˜ ๋ชจ๋“  ์˜์กด์„ฑ์ด ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ํ•ด์„๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”.

๋ณด์ถฉ ์ •๋ณด

  • Live Server ํ™•์žฅ:
    • VS Code์˜ Live Server ํ™•์žฅ์€ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋ฏธ๋ฆฌ ๋ณผ ์ˆ˜ ์žˆ๋Š” ๋น ๋ฅธ ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
    • ์ด ์„ค์ •์—์„œ๋Š” ์™„์ „ํžˆ ํ™œ์šฉ๋˜์ง€ ์•Š์ง€๋งŒ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ ‘๊ทผํ•˜๋Š” ํŽธ๋ฆฌํ•œ ๋‹จ์ถ•ํ‚ค๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

---

๊ฒฐ๋ก 

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

ํ•ต์‹ฌ ์š”์ 

  • ํ”„๋กœ์ ํŠธ ์„ค์ •: ์˜ฌ๋ฐ”๋ฅธ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ๋ฅผ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์€ ํšจ์œจ์ ์ธ ๊ฐœ๋ฐœ์— ๋งค์šฐ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.
  • Controller ์ƒ์„ฑ: Controller๋Š” ๋“ค์–ด์˜ค๋Š” ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๊ณ  ์ ์ ˆํ•œ ๋ทฐ๋กœ ์•ˆ๋‚ดํ•ฉ๋‹ˆ๋‹ค.
  • ๋ทฐ ๋””์ž์ธ: ๊น”๋”ํ•˜๊ณ  ๊ธฐ๋Šฅ์ ์ธ HTML ํ…œํ”Œ๋ฆฟ์„ ์ž‘์„ฑํ•˜๋ฉด ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์ด ํ–ฅ์ƒ๋ฉ๋‹ˆ๋‹ค.
  • ํ…Œ์ŠคํŠธ: ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ •๊ธฐ์ ์œผ๋กœ ์‹คํ–‰ํ•˜๊ณ  ํ…Œ์ŠคํŠธํ•˜์—ฌ ๋ชจ๋“  ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ์›ํ™œํ•˜๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ฐ€์ด๋“œ๋ฅผ ๋”ฐ๋ผํ•จ์œผ๋กœ์จ ์ดˆ๋ณด์ž๋“ค์€ Spring MVC์— ๋Œ€ํ•œ ํƒ„ํƒ„ํ•œ ๊ธฐ์ดˆ๋ฅผ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด๋Š” ๊ณ ๊ธ‰ ํƒ๊ตฌ ๋ฐ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ๋กœ ์ด์–ด์ง‘๋‹ˆ๋‹ค.

์ฐธ๊ณ : ์ด ๊ธฐ์‚ฌ๋Š” AI์— ์˜ํ•ด ์ƒ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.






Share your love