//////
Search
Duplicate
๐Ÿช„

๐ŸŽฐJackpot

Role
Spring Boot
BackEnd Dev
ํŒ€์› ์ˆ˜
6๋ช… (front-end 2๋ช… + back-end 2๋ช… + ๋””์ž์ด๋„ˆ 2๋ช…)
ํ”„๋กœ์ ํŠธ ๊ธฐ๊ฐ„
2020.12 ~ 2021.02
์†์„ฑ
ํŒ€ํ”„๋กœ์ ํŠธ

Background

๋ชจ๋“ ๊ณณ์—์„œ ์š”๊ตฌํ•˜๋Š” ํ”„๋กœ์ ํŠธ ๊ฒฝํ—˜!!
ํ•˜์ง€๋งŒ ๋Œ€์ฒด ์–ด๋””์„œ ๊ฐ™์ด ํ•  ์‚ฌ๋žŒ์„ ๊ตฌํ•˜์ง€??
ํ• ๋•Œ๋Š”, ์žญํŒŸ! ํ”„๋กœ์ ํŠธ ํ•˜๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ ๋ชจ์—ฌ๋ผ!!!

๊ธฐํš ๋ฐฐ๊ฒฝ

โ€ข
ํ”„๋กœ์ ํŠธ๋ฅผ ํ•˜๊ณ  ์‹ถ์€๋ฐ ๊ฐ™์ด ํ•  ์‚ฌ๋žŒ๋“ค์„ ๊ตฌํ•˜๊ธฐ ์–ด๋ ค์šธ๋•Œ
โ€ข
์‚ฌ์šฉ์ž๋“ค์—๊ฒŒ ์‹ ๋ขฐ์„ฑ ์žˆ๋„๋ก ํ”„๋กœ์ ํŠธ ํ›„๊ธฐ๋„ ์‚ฌ๋žŒ๋ณ„๋กœ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜์ž!

Development

๋‹ด๋‹นํ•œ ๊ธฐ๋Šฅ

โ€ข
ํ”„๋กœ์ ํŠธ ๋ชจ์ง‘๊ธ€
์„ค๋ช…
โ€ข
ํ”„๋กœ์ ํŠธ ์ฐธ์—ฌํ•˜๊ธฐ
์„ค๋ช…
โ€ข
ํ”„๋กœ์žญํŠธ ๋Œ“๊ธ€๋‹ฌ๊ธฐ
์„ค๋ช…
โ€ข
ํ”„๋กœ์ ํŠธ ์ข‹์•„์š”
์„ค๋ช…

Tech Stack

โ€ข
Back-end
โ—ฆ
Spring Boot
โ—ฆ
MariaDB
โ—ฆ
JPA
โ—ฆ
๋ฐฐํฌ : EC2, RDS
โ€ข
Front-end
โ—ฆ
Android(Java)
โ—ฆ
๋ฐฐํฌ : Google play(2021.03 ๋น„๊ณต๊ฐœ ์ฒ˜๋ฆฌ)

Result

ํ”„๋กœ์ ํŠธ ๋ฌธ์ œ์ƒํ™ฉ ๋ฐ ํ•ด๊ฒฐ๋ฐฉ๋ฒ•

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

๋ฐฐ์šด์ 

JPA์—๋„ ํ•œ๊ณ„๊ฐ€ ์žˆ๋‹ค๋Š”๊ฒƒ์„ ํ™•์‹คํ•˜๊ฒŒ ๊นจ๋‹ฌ์•˜์Šต๋‹ˆ๋‹ค. ๋ณต์žกํ•œ ์ฟผ๋ฆฌ๋ฅผ ๋‚ ๋ฆด๋•Œ๋Š” JPA๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ๋ง๊ณ  JPQL์ฒ˜๋Ÿผ ๋‹ค๋ฅธ ๊ธฐ์ˆ ์„ ์ด์šฉํ•ด์•ผ ๋œ๋‹ค๋Š”๊ฒƒ์„ ๊นจ๋‹ฌ์•˜์Šต๋‹ˆ๋‹ค.
๋˜, ์ด ํ”„๋กœ์ ํŠธ๋กœ API๋ฌธ์„œํ™”๊ฐ€ ์–ผ๋งˆ๋‚˜ ์ค‘์š”ํ•œ์ง€ ์•Œ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ดˆ๋ฐ˜์—๋Š” API ๋ฌธ์„œํ™” ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„์„œ ์ง์ ‘ slack์œผ๋กœ ํ•ด๋‹น API ๊ด€๋ จ ๋‚ด์šฉ์„ ์ „๋‹ฌํ•ด์ฃผ์—ˆ๋Š”๋ฐ ์„œ๋กœ ์†Œํ†ต์˜ ์–ด๋ ค์›€์„ ๊ฒช๊ณ  swagger๋ผ๋Š” ๋ฌธ์„œํ™” ํˆด์„ ์‚ฌ์šฉํ•ด์„œ ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋งŒํผ, ํด๋ผ์ด์–ธํŠธ๋‹จ๊ณผ ๋ฒก์—”๋“œ ์—ฐ๊ฒฐ์‹œ ๋ฌธ์„œํ™”๊ฐ€ ์ค‘์š”ํ•˜๋‹ค๋Š”๊ฒƒ์„ ๊นจ๋‹ฌ์•˜์Šต๋‹ˆ๋‹ค.