๐Ÿ“Œ [MarketBridge] 01. ๊ฐœ๋ฐœ์ผ์ง€ - ํŒจํ‚ค์ง€ ๊ตฌ์กฐ ํ—ฅ์‚ฌ๊ณ ๋‚  ๋น„์Šค๋ฌด๋ฆฌ

๋ชจ๊น…ยท2024๋…„ 1์›” 9์ผ
0

๊ฐœ๋ฐœ์ผ์ง€ - MarketBridge

๋ชฉ๋ก ๋ณด๊ธฐ
1/8
post-thumbnail

๐Ÿ“– ํŒจํ‚ค์ง€ ๊ตฌ์กฐ์— ๋Œ€ํ•œ ํšŒ๊ณ ๋ก

โœ๏ธ ์ „์ฒด์ ์ธ ํŒจํ‚ค์ง€ ๊ตฌ์กฐ

์•„์ง DDD์— ๋Œ€ํ•œ ์ง€์‹์ด ๋„ˆ๋ฌด๋„ˆ๋ฌด ๋ถ€์กฑํ•ด์„œ ์„ค๋ช…ํ•  ์ˆœ ์—†์ง€๋งŒ ๋ฏธ๋ž˜์˜ MSA๋กœ ๋ณ€ํ™˜ํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ–ˆ์„ ๋•Œ ์‰ฝ๊ฒŒ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์—ฌ ๋„๋ฉ”์ธ ๋ณ„๋กœ ํŒจํ‚ค์ง€๋ฅผ ๋‚˜๋ˆด๋‹ค.

โœ๏ธ Repository ํŒจํ‚ค์ง€ ๊ตฌ์กฐ

Service ์ชฝ์—์„  Port ํŒจํ‚ค์ง€์— ์กด์žฌํ•˜๋Š” Repository๋งŒ ์˜์กดํ•˜๊ณ  ์žˆ์œผ๋ฉฐ JPA๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์ง€๋งŒ Service์ž…์žฅ์—์„  ์˜์กดํ•˜์ง€ ์•Š๋„๋ก ์„ค๊ณ„๋ฅผ ํ–ˆ๋‹ค.
๊ทธ ์ด์œ ๋Š” ์–ธ์ œ๋“ ์ง€ JPA๊ฐ€ ์•„๋‹Œ ๋ฐ์ดํ„ฐ ๊ณ„์ธต์˜ ๊ธฐ์ˆ ์„ ๋ฐ”๊ฟจ์„ ๋•Œ ํŒŒ๊ธ‰๋ ฅ์„ ์ตœ๋Œ€ํ•œ ๋‚ฎ์ถ”๊ธฐ ์œ„ํ•ด์„œ๋‹ค.

์ข€ ๋” ์ž์„ธํžˆ ๋ณด๋ฉด

์„œ๋น„์Šค๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด OrderRepository๋งŒ ์˜์กดํ•œ๋‹ค.

OrderRepository์˜ ๊ตฌํ˜„์ฒด๋ฅผ OrderRepositoryImpl๋กœ ๋งŒ๋“ค์—ˆ์œผ๋ฉฐ ๋‚ด๋ถ€์—์„œ JPARepository๋ฅผ ํฌํ•จํ•˜๊ณ  ์žˆ๋‹ค.

JPARepository์˜ ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•œ๋ฒˆ ๋ฉ”์„œ๋“œ๋กœ ๊ฐ์‹ธ์ฃผ๋Š” ํ˜•ํƒœ์ด๋‹ค.

์ด๋Ÿฐ์‹์œผ๋กœ ๋งŒ๋“ค๊ฒŒ ๋˜๋ฉด JPA๊ธฐ์ˆ ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ๋‹ค๋ฅธ ๊ธฐ์ˆ ๋กœ ๊ต์ฒดํ•˜๋”๋ผ๋„ ํ•ด๋‹น ๋ถ€๋ถ„์— ๋Œ€ํ•ด์„œ๋งŒ ๊ตฌํ˜„ํ•ด์„œ ๊ฐˆ์•„๋ผ์›Œ์ฃผ๊ธฐ๋งŒ ํ•˜๋ฉด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์œ ์ง€๋ณด์ˆ˜๊ด€์ ์—์„œ ์œ ๋ฆฌํ•  ๊ฒƒ์œผ๋กœ ํŒ๋‹จํ–ˆ๋‹ค.

๋‹ค์‹œ ํ•œ ๋ฒˆ ๊ฐ์ฒด์ง€ํ–ฅ์˜ ๋Œ€๋‹จํ•จ์„ ๋Š๋‚€ ํ•˜๋ฃจ์˜€๋‹ค.

profile
๋ฉˆ์ถ”์ง€ ์•Š๊ธฐ

0๊ฐœ์˜ ๋Œ“๊ธ€