๐ ์ค๋์ ํ์ต ํค์๋
- Controller
- Service
- Repository
๐ฅ 3 Layer Architecture
Controller
- ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ๋ฐ๋ ๊ณณ
- ์์ฒญ์ ๋ํ ๋ก์ง ์ฒ๋ฆฌ๋ Service์๊ฒ ์ ๋ฌ
- Service์์ ์ฒ๋ฆฌ ์๋ฃ๋ ๊ฒฐ๊ณผ๋ฅผ ํด๋ผ์ด์ธํธ์๊ฒ ์๋ต
Service
- ์ฌ์ฉ์์ ์๊ตฌ์ฌํญ์ ์ฒ๋ฆฌํ๋ ์ค์ธ ์ค์ ์ค์ธ (๋น์ฆ๋์ค ๋ก์ง)
- DB ์ ์ฅ ๋ฐ ์กฐํ๊ฐ ํ์ํ ๋๋ Repository์๊ฒ ์์ฒญ
Repository
- DB ๊ด๋ฆฌ (์ฐ๊ฒฐ, ํด์ , ์์ ๊ด๋ฆฌ) ๋ฅผ ํฉ๋๋ค.
- DB CRUD ์์ ์ ์ฒ๋ฆฌํฉ๋๋ค.
๐ฅ ํ๋ก์ ํธ ์ ์ฒด์ ์ธ ํ๋ฆ
- build.gradle, application.properties
- entity์ dto
- controller
- service
- repository
์ค๋์ ์๊ฐ์ ์์๋ก ์คํ๋ง์ ์ ์ฒด์ ์ธ ํ๋ฆ์ ํ์ ํด ๋ณด์์ต๋๋ค.
๋ง๋ก ํ์ด ์ค๋ช ์ ํ์๋ฉด, ์ ์ฒด์ ์ธ ์ค์ ์ ํด์ค ํ
์ํฐํฐ์ ๋ํฐ์ค๋ฅผ ๋ง๋ค๊ณ , ์ปจํธ๋กค๋ฌ๋ฅผ ๋ง๋ค์ด์ค๋๋ค.
์ปจํธ๋กค๋ฌ์์ ์์ฒญ์ ๋ฐ์ผ๋ฉด, ์๋น์ค๋ก RequestDto๋ฅผ ๋๊ฒจ์ฃผ๋๋ฐ
์๋น์ค์์ Dto๋ฅผ Entity๋ก ๋ง๋ค๊ณ ๋์ repository๋ก Entity๋ฅผ ๋๊ฒจ์ค๋๋ค.
repository์์ ๋ค์ ์๋น์ค๋ก ๊ฐ ํ ์ปจํธ๋กค๋ฌ๋ก ๊ฐ๊ธฐ ์ ์ํฐํฐ๋ฅผ ๋ค์ ๋ํฐ์ค๋ก
๋ณ๊ฒฝํ ํ ์ปจํธ๋กค๋ฌ์ ๋๊ฒจ์ ์๋ต์ ๋ณด๋ด๋ ํ๋ฆ์ผ๋ก ์ดํดํ๋ ์๊ฐ์ ๊ฐ์ ธ๋ณด์์ต๋๋ค.
๐ ์ค๋์ ํ๊ณ
์คํ๋ง์ ์ ์ฒด์ ์ธ ํ๋ฆ์ ํ์ ํด ๋ณด์์ต๋๋ค.
ํ์ ํ๊ณ ๋๋๊น ๋ญ์ง ๋ชจ๋ฅผ ์์ ๊ฐ์ด ์๊ธฐ๋ฉฐ, ๋ ์ํ ์์๊ฒ ๋ค๋ผ๋
์๊ฐ์ด ๋ค๊ณ ์์ต๋๋ค.
์ด ์๊ฐ์ ์ ์งํ๋ฉฐ ๋ ์ด์ฌํ ํ๋๋ก ํ๊ฒ ์ต๋๋ค.
'TIL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
01/26(๊ธ) ๋ด์ผ๋ฐฐ์์บ ํ Java 25์ผ์ฐจ TIL - Bean (0) | 2024.01.26 |
---|---|
01/25(๋ชฉ) ๋ด์ผ๋ฐฐ์์บ ํ Java 24์ผ์ฐจ TIL - REST API (0) | 2024.01.25 |
01/23(ํ) ๋ด์ผ๋ฐฐ์์บ ํ Java 22์ผ์ฐจ TIL - List (1) | 2024.01.23 |
01/22(์) ๋ด์ผ๋ฐฐ์์บ ํ Java 21์ผ์ฐจ TIL - Path Variable, Request Param (0) | 2024.01.22 |
01/19(๊ธ) ๋ด์ผ๋ฐฐ์์บ ํ Java 20์ผ์ฐจ TIL - this (0) | 2024.01.19 |