์ž๋Š” ์”จ์•—
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ
    • ๐Ÿฃ ๊ธฐ์ดˆ ๊ฐœ๋…
    • ๐Ÿ“Ž ์œ ํŠœ๋ธŒ
    • ๐Ÿ’พ ์กฐ๊ฐ๋ชจ์Œ
    • ๐Ÿ‘ฉ‍๐Ÿ’ป Error
    • โ„ React
    • ๐ŸฅPython
    • ๐Ÿ€ Spring
    • ๐Ÿฅž JS
    • ๐Ÿ‹ Docker
    • ๐Ÿงญ WSO2
    • ๐Ÿง Linux
    • ๐Ÿ”— SQL
    • ๐Ÿข C#
    • ๐Ÿ“‘ ์ฝ์„๊ฑฐ๋ฆฌ
    • ๐Ÿ‘€์งˆ๋ฌธ๋“ค
    • ๐Ÿ‘ฉ‍๐Ÿ’ป ๊ตญ๋น„ ์ˆ˜์—…
      • Java ์ž๋ฐ”
      • Oracle ์˜ค๋ผํด
      • JDBC
      • HTML & CSS
      • JavaScript
      • JSP
      • Servlet
      • Spring
      • MyBatis
    • ๐Ÿ“• ๊ฐœ๋ฐœ ํ˜ผ๊ณต
      • ์ž๋ฐ”์˜ ์ •์„
      • ์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ
hELLO ยท Designed By ์ •์ƒ์šฐ.
์ž๋Š” ์”จ์•—

๐ŸŒฑ

๐Ÿ‘€์งˆ๋ฌธ๋“ค

mvc ํŒจํ„ด

2023. 8. 13. 15:11

-์ปจํŠธ๋กค๋Ÿฌ, ์„œ๋น„์Šค, DAO ํด๋ž˜์Šค๋“ค์€ ํ•จ๊ป˜ ํ˜‘๋ ฅํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์„ฑํ•˜๋ฉฐ, MVC ํŒจํ„ด์˜ ์—ญํ• ์„ ๋ถ„๋‹ดํ•จ

-์ปจํŠธ๋กค๋Ÿฌ : ์‚ฌ์šฉ์ž์˜ ์ž…๋ ฅ์„ ๋ฐ›์•„ ์ฒ˜๋ฆฌํ•˜๊ณ , ๋ทฐ์™€ ๋ชจ๋ธ ์‚ฌ์ด์˜ ํ๋ฆ„์„ ์กฐ์ ˆ

-์„œ๋น„์Šค : ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์„ ๋‹ด๋‹นํ•˜๊ณ  ๋ชจ๋ธ๊ณผ ์ปจํŠธ๋กค๋Ÿฌ์˜ ์ค‘๊ฐœ์ž ์—ญํ• 

-DAO : ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€์˜ ์ƒํ˜ธ์ž‘์šฉ์„ ๋‹ด๋‹นํ•˜๋ฉฐ, ๋ชจ๋ธ์˜ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค๋ฅผ ์ฒ˜๋ฆฌ

 

 

์ปจํŠธ๋กค๋Ÿฌ (Controller):

-์‚ฌ์šฉ์ž์˜ ์š”์ฒญ์„ ๋ฐ›์•„๋“ค์ด๊ณ  ํ•ด๋‹น ์š”์ฒญ์— ๋”ฐ๋ผ ์ ์ ˆํ•œ ์ฒ˜๋ฆฌ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ์—ญํ• 

-์‚ฌ์šฉ์ž์˜ ์ž…๋ ฅ์„ ์ฒ˜๋ฆฌํ•˜๊ณ  ์ด์— ๋”ฐ๋ผ ๋ชจ๋ธ๊ณผ ๋ทฐ๋ฅผ ์กฐ์ž‘ํ•˜๋ฉฐ, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ํ๋ฆ„์„ ๊ด€๋ฆฌ

-ํด๋ผ์ด์–ธํŠธ์™€์˜ ์ธํ„ฐํŽ˜์ด์Šค ์—ญํ• ์„ ํ•˜๋ฉฐ, ์‚ฌ์šฉ์ž ์š”์ฒญ์— ๋”ฐ๋ผ ์„œ๋น„์Šค์™€ ๋ชจ๋ธ์˜ ์ƒํ˜ธ์ž‘์šฉ์„ ์กฐ์ •

 

์„œ๋น„์Šค (Service):

-๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์„ ๋‹ด๋‹นํ•˜๋ฉฐ, ์ปจํŠธ๋กค๋Ÿฌ์™€ ๋ชจ๋ธ ์‚ฌ์ด์—์„œ ์ค‘๊ฐœ์ž ์—ญํ• 

-๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์€ ์‚ฌ์šฉ์ž์˜ ์š”์ฒญ์— ๋”ฐ๋ผ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ, ๊ทœ์น™ ์ ์šฉ, ์ž‘์—… ํ๋ฆ„ ๊ด€๋ฆฌ ๋“ฑ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ถ€๋ถ„

-์ด๋Ÿฌํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์„ ๊ตฌํ˜„ํ•˜๊ณ  ์ปจํŠธ๋กค๋Ÿฌ์—๊ฒŒ ์ œ๊ณตํ•˜์—ฌ, ์ปจํŠธ๋กค๋Ÿฌ๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ๋ทฐ์— ์ „๋‹ฌํ•˜๋„๋ก ํ•จ

-์„œ๋น„์Šค ํด๋ž˜์Šค๋Š” "๋ชจ๋ธ"์˜ ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Œ

 

DAO (Data Access Object):

-๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€์˜ ์ƒํ˜ธ์ž‘์šฉ์„ ์ถ”์ƒํ™”ํ•˜์—ฌ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ์—ญํ• 

-๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€์˜ ์—ฐ๊ฒฐ, ์ฟผ๋ฆฌ ์‹คํ–‰, ๋ฐ์ดํ„ฐ ๋ณ€ํ™˜ ๋“ฑ์„ ๋‹ค๋ฃจ๋ฉฐ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•œ ์ ‘๊ทผ์„ ๋ชจ๋ธ ๊ณ„์ธต์—์„œ ๋ถ„๋ฆฌ์‹œ์ผœ์คŒ

-๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€์˜ ์†Œํ†ต์„ ์ฒ˜๋ฆฌํ•˜๋ฏ€๋กœ, MVC ํŒจํ„ด์—์„œ "๋ชจ๋ธ"์˜ ์ผ๋ถ€๋กœ ๋ณผ ์ˆ˜ ์žˆ์Œ

 


๋ทฐ(View) ํŽ˜์ด์ง€:

-HTML, CSS, JavaScript ๋“ฑ ํ”„๋ก ํŠธ์—”๋“œ ๊ธฐ์ˆ ๋กœ ์ด๋ฃจ์–ด์ง„ ํ™”๋ฉด์„ ๋‹ด๋‹น

-์ตœ์†Œํ•œ์˜ ํ”„๋ ˆ์  ํ…Œ์ด์…˜ ๋กœ์ง๋งŒ ํฌํ•จ๋˜์–ด์•ผ ํ•˜๋ฉฐ, ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์ด๋‚˜ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ์™€ ๊ด€๋ จ๋œ ์ž๋ฐ” ์ฝ”๋“œ๋Š” ์ตœ๋Œ€ํ•œ ๋ฐฐ์ œ

 (๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์€ ์ปจํŠธ๋กค๋Ÿฌ(Controller)์™€ ๋ชจ๋ธ(Model)์—์„œ ์ฒ˜๋ฆฌ)

-์„œ๋ฒ„์ธก์—์„œ ์ „๋‹ฌ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ถœ๋ ฅํ•˜๊ฑฐ๋‚˜ ๋™์ ์œผ๋กœ ํ™”๋ฉด์„ ์ƒ์„ฑํ•˜๋Š”๋ฐ ํ•„์š”ํ•œ ํ…œํ”Œ๋ฆฟ ์–ธ์–ด๋‚˜ ํ”„๋ก ํŠธ์—”๋“œ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž‘์—…

-JSTL (JSP Standard Tag Library), Thymeleaf, React, Vue.js ๋“ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ทฐ ํŽ˜์ด์ง€๋ฅผ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Œ

์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'๐Ÿ‘€์งˆ๋ฌธ๋“ค' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

jdbc์™€ myBatis  (1) 2023.08.14
๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง  (0) 2023.08.13
๋ชจ๋ธ1๊ณผ ๋ชจ๋ธ2  (0) 2023.08.13
ํด๋ผ์ด์–ธํŠธ์ธก ์„œ๋ฒ„์ธก ์œ ํšจ์„ฑ ๊ฒ€์ฆ  (0) 2023.04.25
alert, ์š”์ฒญ(Request) - ์‘๋‹ต(Response) - ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ์ˆœ์„œ  (0) 2023.04.17
    '๐Ÿ‘€์งˆ๋ฌธ๋“ค' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • jdbc์™€ myBatis
    • ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง
    • ๋ชจ๋ธ1๊ณผ ๋ชจ๋ธ2
    • ํด๋ผ์ด์–ธํŠธ์ธก ์„œ๋ฒ„์ธก ์œ ํšจ์„ฑ ๊ฒ€์ฆ

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”