Home
>
Spring
>
๐[Spring] API ์คํ, HTTP Body๊ฐ ๋์ผํ ๊ฒฝ์ฐ DTO๋ฅผ ์๋ก ๋ง๋๋๊ฒ ์ข์๊น์?
Spring
Framework
๐[Spring] API ์คํ, HTTP Body๊ฐ ๋์ผํ ๊ฒฝ์ฐ DTO๋ฅผ ์๋ก ๋ง๋๋๊ฒ ์ข์๊น์?
- API ์คํ๊ณผ HTTP Body๊ฐ ์์ ํ ๋์ผํ๋๋ผ๋ DTO๋ฅผ ์ฌํ์ฉํ ์ง ์๋ก ๋ง๋ค์ง๋ ๋ค์์ ๊ณ ๋ คํ์ฌ ๊ฒฐ์ ํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
1๏ธโฃ ์๋ฏธ์ ์ฑ
์์ ๋ถ๋ฆฌ.
- ๋ API๊ฐ ์๋ก ๋ค๋ฅธ ์๋ฏธ์ ๋ชฉ์ ์ ๊ฐ์ง๋ค๋ฉด, ์๋ฅผ ๋ค์ด ํ๋๋ ์ฌ์ฉ์ ๋ฑ๋ก์ด๊ณ ๋ค๋ฅธ ํ๋๋ ์ฌ์ฉ์ ์
๋ฐ์ดํธ์ผ ๊ฒฝ์ฐ, ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๋๋ผ๋ ๋ณ๋์ DTO๋ฅผ ์์ฑํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
- ์ด๋ ๊ฒ ํ๋ฉด ๊ฐ API์ ๋ชฉ์ ๊ณผ ์ปจํ
์คํธ๊ฐ ๋ช
ํํด์ง๊ณ , ์ฝ๋ ๊ฐ๋
์ฑ์ด ํฅ์๋ฉ๋๋ค.
2๏ธโฃ ํ์ฅ์ฑ๊ณผ ๋ณ๊ฒฝ ๊ฐ๋ฅ์ฑ.
- ํ๋์ DTO๋ฅผ ์ฌ๋ฌ API์์ ๊ณต์ ํ๋ฉด, ํ์ชฝ์ ์๊ตฌ์ฌํญ์ด ๋ณ๊ฒฝ๋ ๋ ๋ค๋ฅธ API์ ์ํฅ์ ์ค ์ ์์ต๋๋ค.
- ํนํ ํ๋์ API๋ง ๋ณ๊ฒฝ์ด ํ์ํ ์ํฉ์์ ๊ณต์ DTO๋ฅผ ์์ ํ ๊ฒฝ์ฐ ๋ค๋ฅธ API์ ์๋์น ์์ ์ํฅ์ ์ค ์ ์์ต๋๋ค.
- ๋
๋ฆฝ์ ์ธ ์ ์ง๋ณด์๊ฐ ํ์ํ ๊ฒฝ์ฐ DTO๋ฅผ ์๋ก ์์ฑํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
3๏ธโฃ ๊ฒ์ฆ ๋ก์ง ์ฐจ์ด.
- DTO์ ๊ฒ์ฆ ๋ก์ง์ด ํฌํจ๋์ด ์๋ค๋ฉด, API๋ง๋ค ๊ฒ์ฆ ๋ฐฉ์์ด ๋ค๋ฅผ ์ ์์ต๋๋ค.
- ๊ฐ์ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๋๋ผ๋ ๊ฒ์ฆ์ด ๋ค๋ฅด๋ฉด DTO๋ฅผ ๊ตฌ๋ถํ๋ ๊ฒ์ด ์ ํฉํฉ๋๋ค.
4๏ธโฃ ๊ฐ๋จํ ๊ฒฝ์ฐ ์ฌํ์ฉ ๊ฐ๋ฅ.
- ๋ API๊ฐ ๋งค์ฐ ์ ์ฌํ ๋ชฉ์ ์ ๊ฐ์ง๊ณ ์๊ณ , ํ์ฌ์ ๋ฏธ๋์๋ ๋ณ๊ฒฝ ๊ฐ๋ฅ์ฑ์ด ์ ๋ค๊ณ ํ๋จ๋๋ค๋ฉด DTO๋ฅผ ์ฌํ์ฉํ๋ ๊ฒ์ด ์ฝ๋ ์ค๋ณต์ ์ค์ด๋ ๋ฐฉ๋ฒ์ด ๋ ์ ์์ต๋๋ค.
5๏ธโฃ ๋ง๋ฌด๋ฆฌ.
- ๋ฐ๋ผ์ API์ ๋ชฉ์ ๊ณผ ๋ฐ์ดํฐ ์ฌ์ฉ ๋ฐฉ์์ด ๋ช
ํํ๊ฒ ๊ตฌ๋ถ๋๋ ๊ฒฝ์ฐ๋ผ๋ฉด DTO๋ฅผ ์๋ก ๋ง๋ค๊ณ , ๊ทธ๋ ๊ธฐ ์์ ๊ฒฝ์ฐ ์ฌํ์ฉํ ์ ์์ต๋๋ค.