
DTO๋ ์ปจํธ๋กค๋ฌ, ์๋น์ค, ๋ฆฌํ์งํ ๋ฆฌ, ๋๋น๋ฅผ ๊ฒ์ํด๋ณด๊ณ ๊ทธ ์ญํ ์ ๋ํด ์ ๋ฆฌ
๐งฉ Controller:
๐ ์์ฒญ์ ๋ฐ๊ณ
๐ ์ด๋ค ์๋น์ค ๋ก์ง์ ์ธ์ง ์ ํด์ ํธ์ถํ๊ณ
๐ ๊ฒฐ๊ณผ๋ฅผ ์ฌ์ฉ์(View)์ ๋ฐํ
๐ฝ๏ธ ๋น์ : ์๋ → ์ง์์๊ฒ "๊น์น๋ณถ์๋ฐฅ" ์์ฒญ → ์ง์์ด ์๋ฆฌ์ฌํํ ์ ๋ฌ → ๋ค์ ์๋์๊ฒ ์๋น
โ๏ธ Service:
๐ ์ง์ง "๋ฌด์์ ํ ์ง" ๊ฒฐ์ ํ๋ ํต์ฌ ๋ก์ง ๋ด๋น
๐ Controller๊ฐ ์ ๋ฌํด์ค ๋ฐ์ดํฐ๋ฅผ ์ค์ ๋ก ์ฒ๋ฆฌ
๐ณ ๋น์ : ์๋ฆฌ์ฌ! ์ด๋ค ์์ผ๋ก ์๋ฆฌํ ์ง(๋น์ฆ๋์ค ๋ก์ง)๋ฅผ ์ฑ ์์ง
๐๏ธ DAO / Repository:
๐ ์ค์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ฐ๊ฒฐํด์ CRUD๋ฅผ ์คํํ๋ ๊ฐ์ฒด
๐ Service์ ์์ฒญ์ ๋ฐ์ ์ง์ง DB๋ฅผ ๋ง์ง๋ ์์ญ
๐ฆ ๋น์ : ์๋ฆฌํ ๋ ์์ฌ๋ฃ๋ฅผ ์ ์ฅํด๋์ ์ฐฝ๊ณ !
์๋ฆฌ์ฌ๊ฐ ์ฌ๋ฃ ๊บผ๋ด์ ์๋ฆฌํ๊ณ , ๋จ์ ๊ฑด ๋ค์ ๋ฃ๊ณ
๐๏ธ Entity:
๐ DB ํ
์ด๋ธ๊ณผ 1:1๋ก ๋งค์นญ๋๋ ๊ฐ์ฒด
๐ ์ง์ง DB์ ์ ์ฅ๋๋ ์ ๋ณด์ ๊ตฌ์กฐ
๐งฑ ์ค์ฒด! ์ค์ ๋ก DB์์ ์กฐ์๋๋ “์ง์ง” ๋ฐ์ดํฐ
๐ฆ DTO (Data Transfer Object):
๐ ๋ฐ์ดํฐ๋ฅผ ์ฎ๊ธธ ๋ ์ฌ์ฉํ๋ “ํฌ์ฅ ์์”
๐ ๋ณต์กํ ๋ก์ง ์์ด ๊ทธ๋ฅ ๋ฐ์ดํฐ๋ง ๋ค๊ณ ๋ค๋
๐ฎ ๋น์ : ์ฐ์ฒด๊ตญ ์์. ์์ ๋ญ ๋ค์๋์ง ๊ด์ฌ ์์. ๊ทธ๋ฅ "์ด๋ฐ"๋ง ์ ํ๋ฉด ๋จ.
๐ก ๊ทธ๋ฆฌ๊ณ ์ง์ง ์ค์ํ ๊ฑฐ:
Entity์ DTO๋ฅผ ์ ๋ถ๋ฆฌ?
- Entity๋ DB์ ์ง์ ์ฐ๊ฒฐ๋๋๊น, ์ํฐํฐ์ ์๋ช ์ฃผ๊ธฐ, JPA ๊ด๋ฆฌ ๋์์ด๋ผ๋ ์ ์ด ํต์ฌ์ด๊ณ
- DTO๋ ๋ฐ์ดํฐ ์ด๋์ ์ํ ์ผํ์ฑ/์ ๋ฌ์ฉ ๊ฐ์ฒด๋ผ์ ๋ฐ๊นฅ์ ๋ณด์ฌ์ฃผ๊ฑฐ๋ ๋ฐ์ ๋๋ง ์ฌ์ฉ
→ ์ฆ, ์ญํ ๊ณผ ์๋ช ์ฃผ๊ธฐ๊ฐ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ๊ผญ ๋ถ๋ฆฌํด์ ์
๐ฅ ์์ฝ:
| Controller | ์์ฒญ ๋ฐ๊ณ , Service ํธ์ถํ๊ณ , ๊ฒฐ๊ณผ ์ ๋ฌ | ์ง์ |
| Service | ๋น์ฆ๋์ค ๋ก์ง ์ฒ๋ฆฌ | ์๋ฆฌ์ฌ |
| Repository | DB ์ ๊ทผ, CRUD ์คํ | ์ฐฝ๊ณ ๊ด๋ฆฌ |
| Entity | DB ํ ์ด๋ธ ๋งคํ ๊ฐ์ฒด | ์ฌ๋ฃ ์ํ |
| DTO | ๋ฐ์ดํฐ ์ ๋ฌ ์ฉ๋ | ์ฐํธ ์์ |
'๋ฐฑ์๋' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| CRUD ๊ตฌํ/ CR ๊ธฐ๋ฅ์ ๋ํด (1) | 2025.05.04 |
|---|---|
| [Spring MODEL ๊ตฌํ/MVC ํจํด] (1) | 2025.04.05 |
| ๋ฐฑ์๋๋? (0) | 2025.03.28 |
| IntelliJ IDEA๋ก HTML, CSS ๋ง์ ์ฌ์ฉํ์ฌ ์ ์ ์น ํ์ด์ง ๋ง๋ค๊ธฐ (0) | 2025.03.28 |
| ์๋ฒ์ ํด๋ผ์ด์ธํธ์ ๊ด๊ณ (0) | 2025.03.28 |