8๋ฒ์งธ ๊ณผ์
์คํ๋ง์ ๊ฝ, 3๊ณ์ธต
[ Client -- Controller ๐๐ป Service ๐๐ป Repository -- DB ]
Client์ DB ์ฌ์ด 3๊ณ์ธต์ ์ญํ ์ ๊ฐ๊ฐ ๋ฌด์์ผ๊น?
Controller
- ์ญํ : ํด๋ผ์ด์ธํธ์์ ์์ฒญ๋ ์๊ตฌ์ฌํญ์ ์ฒ๋ฆฌํ๊ณ ์ง์ ๋ ๋ทฐ์ ๋ชจ๋ธ ๊ฐ์ฒด๋ฅผ ๋๊ฒจ์ค๋ค.
- ๊ธฐ๋ฅ : ์๊ตฌ์ฌํญ ์์ฒญ์ ๋ฐ๋ผ ์ด๋ค ์ฒ๋ฆฌ๋ฅผ ํ ์ง Service์ ๊ฒฐ์ ์ ๋๊ฒจ์ฃผ๊ณ ์ ๋ฌ๋ ๊ฐ์ ๋ค์ ํด๋ผ์ด์ธํธ์ ๋ฐํํด์ค๋ค.
Service
- ์ญํ : ์ค์ ๋ก ์์
์ด ์ผ์ด๋๋ ๋จ๊ณ. ์ฆ, ๋น์ฆ๋์ค ๋ก์ง์ด ์ฒ๋ฆฌ๋๋ ๊ณณ์ด๋ค
- ๊ธฐ๋ฅ : ์๋ฒ์์ ์ฌ์ฉ์์ ์๊ตฌ์ฌํญ์ ์ฒ๋ฆฌํ๋ค. DB ์ ๋ณด๊ฐ ํ์ํ๋ฉด Repository์ ์์ฒญํ๋ค.
Repository
- ์ญํ : Service์์ ๋์จ ๊ฒฐ๊ณผ๊ฐ์ ์ ์ฅํ๊ฑฐ๋ ๊ธฐ์กด์ ์ ์ฅ๋ ์ ๋ณด๋ฅผ ๋ฐํํด์ฃผ๋ ๋ฑ์ ์ผ์ ํ๋ ์ ๋ณด ๊ด๋ฆฌ ์ธํฐํ์ด์ค
- ๊ธฐ๋ฅ : DB ์ฐ๊ฒฐ, ํด์ , ์์์ ๊ด๋ฆฌํ๊ณ CRUD ์์
์ ์ฒ๋ฆฌํ๋ค