λμ΄μΌμ΄λ μλ‘μκ² ν-ν κ°κ²(λ©μ΄μ»€)μ κ³ κ°(νΌμ»€)λ₯Ό μ°κ²°νκ³ μλ‘μκ² μ§μ€ν μ μλλ‘ νκ²½μ μ 곡νλ νλ μ΄ν μ£Όλ¬Έ νλ«νΌμ λλ€.
Spring Boot 3.3.4
JDK 17
PostgreSQL
: κ³΅κ° λ°μ΄ν° λ° κ΄κ³ν λ°μ΄ν°λ₯Ό μ μ°νκ² μ²λ¦¬ν μ μμ΄ μ ννμμ΅λλ€.JPA
: κ°μ²΄μ ν μ΄λΈ κ° λ§€νμ ν΅ν΄ SQL μμ΄λ λ°μ΄ν° μ²λ¦¬κ° κ°λ₯νλλ‘ νμμ΅λλ€.AWS RDS
: μμ μ μΈ κ΄κ³ν λ°μ΄ν°λ² μ΄μ€ μ΄μμ μν΄ μ¬μ©νμμ΅λλ€.AWS S3
: μ μ 리μμ€ λ° μ΄λ―Έμ§ νμΌμ μμ νκ² μ μ₯νκ³ μ 곡νκΈ° μν΄ μ¬μ©νμμ΅λλ€.Jwt & Cookie
: μ μ μΈμ¦κ³Ό ν ν°μ μμ ν μ λ¬μ μ¬μ©νμμ΅λλ€.Nginx
: μΉ μλ², 리λ²μ€ νλ‘μ, λ‘λλ°Έλ°μ±μ νμ©νμμ΅λλ€.Docker
: μλ² μ»¨ν μ΄λ μ€νμ μν΄ μ¬μ©νμμ΅λλ€.Docker Compose
: μ¬λ¬ 컨ν μ΄λλ₯Ό λμΌν νκ²½μμ μ€ννλλ‘ κ΄λ¦¬νμμ΅λλ€.Github Actions
: CI/CD νμ΄νλΌμΈ μλνλ₯Ό μν΄ νμ©νμμ΅λλ€.
Code Review
& Approve
μ€μ
μμ±ν μ΄μμ λ°λΌμ λΈλμΉ μμ± Ex) feat/#4-login
main branch
: κ°λ° μ΅μ’
μλ£ μ merge
develop branch
: κ°λ° μ§ν
feature branch
: μλ‘μ΄ κΈ°λ₯ κ°λ°
refactor branch
: 리ν©ν λ§ μ§ν
μ΄μλ²νΈ λΆμ¬μ μ»€λ° Ex) [FEAT] #1: λ‘κ·ΈμΈ κΈ°λ₯ μΆκ°
Bodyλ μΆκ° μ€λͺ
νμνλ©΄ μ¬μ©
μμ νκ·Έ | λ΄μ© |
---|---|
feat |
μλ‘μ΄ κΈ°λ₯μ λν μ»€λ° |
fix |
λ²κ·Έ μμ μ λν μ»€λ° |
chore |
κ·Έ μΈ μμν μμ μ λν μ»€λ° |
cicd |
CICD κ΄λ ¨ μ€μ μμ μ λν μ»€λ° |
docs |
λ¬Έμ μμ μ λν μ»€λ° |
style |
μ½λμ λμμλ μν₯μ μ£Όμ§ μλ ν¬λ§·, μΈλ―Έμ½λ‘ λ± μμ μ λν μ»€λ° |
refactor |
μ½λ 리ν©ν λ§μ λν μ»€λ° |
test |
ν μ€νΈ μ½λ μμ μ λν μ»€λ° |
design |
CSS λ° UI μμ μ λν μ»€λ° |
set |
νλ‘μ νΈ μΈν κ΄λ ¨ μ»€λ° |
- ν¨ν€μ§λͺ
: ν λ¨μ΄ μλ¬Έμ μ¬μ©
Ex) auth
- ν΄λμ€λͺ
: νμ€μΉΌ μΌμ΄μ€ μ¬μ©
Ex) JwtUtil
- λ©μλλͺ
: μΉ΄λ© μΌμ΄μ€ μ¬μ©, λμ¬λ‘ μμ
Ex) getUser
- λ³μλͺ
: μΉ΄λ© μΌμ΄μ€ μ¬μ©
Ex) jwtProperties
- μμλͺ
: λλ¬Έμ μ¬μ©
Ex) USER_ROLE
- 컬λΌλͺ
: μ€λ€μ΄ν¬ μΌμ΄μ€ μ¬μ©
Ex) user_id
src
βββ main
βΒ Β βββ auth
βΒ Β βββ alarm
βΒ Β βββ design
βΒ Β βββ event
βΒ Β βββ global
βΒ Β βββ order
βΒ Β βββ store
βΒ Β βββ user
βΒ Β βββ controller
βΒ Β βββ domain
βΒ Β βββ dto
βΒ Β | βββ request
βΒ Β | βββ response
βΒ Β βββ exception
βΒ Β βββ repository
βΒ Β βββ service
βΒ Β βββ util
βββ resources
βββ application-dev.yml
Β Β βββ application-prod.yml
{
"isSuccess": true,
"code": "REQUEST_OK",
"message": "μμ²μ΄ μΉμΈλμμ΅λλ€.",
"results": {
"storeId": 1,
"storeName": "λμ΄λ ν°",
"designName": "ννΈ λ¦¬λ³Έ μΌμ΄ν¬"
}
}
isSuccess
: μ±κ³΅ μ¬λΆcode
: μ±κ³΅ μ½λ, 컀μ€ν κ°λ₯message
: μ±κ³΅ λ©μΈμ§results
: λ°μ΄ν°κ° λ€μ΄κ°λ κ³³