디저비 백엔드는 디저트 가게 탐색/검색, 커뮤니티, 사장님 대시보드, 사용자 취향 기반 추천 기능을 제공하는 REST API 서버입니다.
프론트엔드와 연동되어 가게 데이터, 사용자/사장님 계정, 커뮤니티, 통계 전반을 담당합니다.
- Java 17
- Spring Boot
- Spring Web / Spring MVC
- Spring Data JPA
- Spring Security / OAuth2 Client (소셜 로그인 연동)
- MySQL
- AWS EC2 – 애플리케이션 서버
- Nginx – 리버스 프록시, 정적 리소스/SSL 처리
- Swagger – API 문서 자동화
- Docker
- GitHub Actions – CI/CD (테스트, 빌드, 배포 자동화)
- .env / 환경 분리 –
dev,prod
backend/
├── .github/ # 워크플로우
├── nginx/ # Nginx 설정
├── scripts/ # 배포/헬스체크/마이그레이션 스크립트
├── ssl/ # 인증서 관련
├── src/
│ ├── main/
│ │ ├── java/org/swyp/dessertbee/
│ │ │ ├── admin/ # 관리자용 API/도메인
│ │ │ ├── auth/ # 인증/인가, 소셜 로그인, 토큰
│ │ │ ├── common/ # 공통 응답/예외/유틸
│ │ │ ├── community/ # 커뮤니티 (리뷰, 메이트, 댓글 등)
│ │ │ ├── config/ # 설정
│ │ │ ├── email/ # 이메일 발송, 템플릿
│ │ │ ├── migration/ # 마이그레이션/배치 관련 로직
│ │ │ ├── preference/ # 사용자 취향/설문 도메인
│ │ │ ├── role/ # 권한/역할(Role) 도메인
│ │ │ ├── search/ # 검색/필터링 도메인 (가게/키워드)
│ │ │ ├── seeder/ # 초기 데이터 시딩 로직
│ │ │ ├── statistics/ # 통계/분석 (가게/커뮤니티/유저)
│ │ │ ├── store/ # 가게/매장 도메인 (사장님 대시보드 포함)
│ │ │ └── user/ # 사용자/사장님 계정, 프로필
│ │ └── resources/
│ │ ├── application.yml
│ │ ├── application-local.yml
│ │ ├── application-dev.yml
│ │ └── application-prod.yml
│ └── test/java/org/swyp/dessertbee/
│ └── ... 테스트 코드
├── Dockerfile
├── docker-compose.yml
├── build.gradle
└── settings.gradle