Project/나혼자 미슐랭

나혼자 미슐랭 개발일지 #1 - 개발환경 세팅 & DB 연결

Coding Kitsune 2025. 5. 5. 00:16

GitHub 협업 구조 설정: 공동 개발 & 백업

이번 나혼자 미슐랭 프로젝트는 두 명이 함께 백엔드 개발을 진행하기 때문에, 협업 구조를 효율적으로 설정하는 것이 중요했습니다. 처음엔 하나의 GitHub 리포지토리만 활용하려 했지만, 협업과 개인 백업의 분리를 위해 구조를 다음과 같이 설계했습니다:

 

메인 리포지토리 (황인규 GitHub)

프로젝트의 공식 개발 리포지토리는 인규의 GitHub에 위치해 있으며, 저는 그 리포지토리에 **Collaborator(협업자)**로 등록되어 코드 수정 및 푸시 권한을 부여받았습니다. 이곳은 실질적인 협업과 코드 리뷰, PR(Pull Request) 등이 이루어지는 메인 공간입니다.

 

BE: https://github.com/hig07/solo-michelin-backend

 

GitHub - hig07/solo-michelin-backend: 나혼자 미슐랭

나혼자 미슐랭. Contribute to hig07/solo-michelin-backend development by creating an account on GitHub.

github.com

 

FE: https://github.com/hig07/solo-michelin-frontend

 

GitHub - hig07/solo-michelin-frontend: 나혼자 미슐랭 프론트엔드

나혼자 미슐랭 프론트엔드. Contribute to hig07/solo-michelin-frontend development by creating an account on GitHub.

github.com

 

 

서브 리포지토리 (박희범 GitHub)
동시에 내 GitHub 계정에도 동일한 프로젝트용 리포지토리를 생성하여 백업 및 개인 실험용 공간으로 활용 중입니다.
여기서는 주로 실험적인 브랜치를 테스트하거나, 내 개발 이력을 정리해두는 용도로 사용합니다. 필요 시 메인 리포지토리와 **동기화(fetch, pull)**하여 코드를 최신 상태로 유지합니다.

 

BE: https://github.com/Peter-Park95/solo-michelin-backend

 

GitHub - hig07/solo-michelin-frontend: 나혼자 미슐랭 프론트엔드

나혼자 미슐랭 프론트엔드. Contribute to hig07/solo-michelin-frontend development by creating an account on GitHub.

github.com

 

 

 

Clone 해서 서버실행, 백업 리파지토리에 Push

공동작업자가 개발환경 셋팅을 완료했고, 저장소에 업로드하였습니다.

해당 프로젝트를 clone 받아와서 grale 설치, application.yml 생성 등의 작업 후 서버를 실행시켰고, 정상동작을 확인하였습니다.

 

 

Model 생성 (User / Restaurant  / Review)

package com.michelin.model;
import jakarta.persistence.*;

@Entity
@Table(name = "user")
public class User {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @Column(nullable = false, length = 20)
    private String username;

    @Column(nullable = false, length = 50, unique = true)
    private String email; //(중복 방지)

    @Column(nullable = false, length = 100)
    private String password;

    @Column(columnDefinition = "DATETIME DEFAULT CURRENT_TIMESTAMP")
    private String created; // 가입일

    @Column(columnDefinition = "TINYINT(1) DEFAULT 0")
    private int deleted;

}

 

다음과 같은 형태의 모델로 user, restaurant, review 모델을 구현하였고, 로컬 DB에 연결한 뒤 동작을 확인하였습니다.

이 후 AWS RDS를 생성하여, 퍼블릭 DB를 사용할 수 있도록 하였습니다.

 

 

 

 

  • HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@... → DB 연결 성공
  • Hibernate: create table ... / alter table ... → JPA로 테이블 생성 및 수정 
  • Tomcat started on port 8080 → 서버 정상 기동
  • Started SoloMichelinBackendApplication → 어플리케이션 실행 완료

 

✅ 다음 해야할 일:

  • 공동작업자, 나의 집 IP AWS RDS에 등록
  • Restaurant CRUD API 만들기