Community

๐Ÿ•Š๏ธ ์Šคํ”„๋ง ๋ถ€ํŠธ ํด๋” ๊ตฌ์กฐ ๋ชจ๋ฒ” ์‚ฌ๋ก€

๊ฐœ๋ฐœ์ž๋“ค์€ ์ฝ”๋“œ์˜ ์œ ์ง€๋ณด์ˆ˜์„ฑ, ํŒ€์› ๊ฐ„ ํ˜‘์—… ๋ฐ ์ „์ฒด ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค ๊ฐœ์„ ์„ ์œ„ํ•ด ์ž˜ ๊ตฌ์กฐํ™”๋œ ํด๋” ๊ตฌ์กฐ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์Šคํ”„๋ง ๋ถ€ํŠธ ํด๋” ๊ตฌ์กฐ๊ฐ€ ์ค‘์š”ํ•œ ์ด์œ ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. - ๋ช…ํ™•์„ฑ ๋ฐ ๊ตฌ์„ฑ - ๋ชจ๋“ˆํ™” - ํ™•์žฅ์„ฑ - ์ฝ”๋“œ ์žฌ์‚ฌ์šฉ์„ฑ ๋‹ค์Œ์€ ์Šคํ”„๋ง ๋ถ€ํŠธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋Œ€ํ•œ ํด๋” ๊ตฌ์กฐ๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. (๋งํฌ ์ฐธ์กฐ) ๐Ÿ“Œ config ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„ค์ •์„ ๊ตฌ์„ฑํ•˜๋Š” ๊ตฌ์„ฑ ํด๋ž˜์Šค ๋˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜-๋ ˆ๋ฒจ์˜ AppConfig๋ฅผ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ“Œ controller RESTful ์ปจํŠธ๋กค๋Ÿฌ ํด๋ž˜์Šค๋ฅผ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. ์ด ํด๋ž˜์Šค๋Š” ๋“ค์–ด์˜ค๋Š” HTTP ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๊ณ  API Endpoint๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ“Œ DTO ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ๋‹ค๋ฅธ ๊ณ„์ธต ๋˜๋Š” ๊ตฌ์„ฑ ์š”์†Œ ๊ฐ„์— ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. - ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์ด ํฌํ•จ๋˜์ง€ ์•Š์Œ - ๋ฐ์ดํ„ฐ ์šด๋ฐ˜์ด ์ฃผ ๋ชฉ์  ๐Ÿ“Œ Enums Enum ํด๋ž˜์Šค์˜ ์˜ˆ์‹œ๋กœ๋Š” SUCCESS, FAIL, PENDING๋“ฑ์˜ ์ƒํƒœ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๐Ÿ“Œ model ๋„๋ฉ”์ธ์˜ ๊ตฌ์กฐ๋‚˜ ๋™์ž‘์„ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฐ์ดํ„ฐ ๋ชจ๋ธ ๋˜๋Š” ์—”ํ‹ฐํ‹ฐ๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ…Œ์ด๋ธ”์— ๋งคํ•‘๋˜๊ณ  ๋ฐ์ดํ„ฐ์˜ ์†์„ฑ๊ณผ ๊ด€๊ณ„๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ“Œ repository ๋ฐ์ดํ„ฐ ์ ‘๊ทผ์„ ๋‹ค๋ฃจ๋Š” ๋ ˆํŒŒ์ง€ํ† ๋ฆฌ ํด๋ž˜์Šค๋ฅผ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํด๋ž˜์Šค๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ORM, JPA ๋“ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ์ƒํ˜ธ์ž‘์šฉ ํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ“Œ service ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์„ ๊ตฌํ˜„ํ•˜๋Š” ์„œ๋น„์Šค ํด๋ž˜์Šค๋ฅผ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ“Œ utils ์ฝ”๋“œ๋ฒ ์ด์Šค๋ฅผ ์ฒด๊ณ„์ ์ด๊ณ  ๋ชจ๋“ˆ์‹์œผ๋กœ ์šด์˜ํ•˜๊ธฐ ์œ„ํ•ด ์œ ํ‹ธ๋ฆฌํ‹ฐ ํด๋ž˜์Šค๋ฅผ ๋ฐฐ์น˜ํ•ฉ๋‹ˆ๋‹ค.

์•Œ๋ฆผ

์•Œ๋ฆผ์ด ์—†์Šต๋‹ˆ๋‹ค