프로젝트

SpringBoot로 그룹캘린더 만들기 - 프로젝트 생성 및 데이터베이스 설정, 깃에 커밋까지 완료

duburani 2023. 4. 6. 14:24
스프링부트 생성

spring initializer 를 통해 Spring Boot 2.7.10, gradle, Java 11로 스프링부트 프로젝트를 생성했다.

dependencies {
	implementation 'org.springframework.boot:spring-boot-starter-data-jdbc'
	implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
	implementation 'org.springframework.boot:spring-boot-starter-validation'
	implementation 'org.springframework.boot:spring-boot-starter-web'
	compileOnly 'org.projectlombok:lombok'
	runtimeOnly 'com.mysql:mysql-connector-j'
	annotationProcessor 'org.projectlombok:lombok'
	testImplementation 'org.springframework.boot:spring-boot-starter-test'
	implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
	implementation 'org.springframework.boot:spring-boot-devtools:2.7.9'
	implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.8.0'
}

DB는 mysql을 사용할 예정이고 화면단은 타임리프...

일단 필요한 설정은 모두 받아줬다.

설정이 끝난 뒤에 캘린더라든지 회원가입이라든지 개발에 필요한 부수적인 내용도 추가할 예정이다.

 

 

 

데이터베이스 설정

혼자 개인적으로 하는 프로젝트 였으면 그냥 로컬에 디비 써서 했을텐데 예담이와 공동 운명체 이기 때문에,,,

AWS를 사용해서 서버에 디비를 띄우고 그걸 받아와서 프로젝트에 연결하기로 했다.

그런데 생각보다 AWS 설정하는게 간단해서 놀랬고 성공해서 신났다. 후훗

 

워크밴치에 성공적으로 연결되었고 스키마 생성해주었다.

 

 

 

application.yml

spring:
  datasource:
    url: jdbc:mysql://${앤드포인트 주소}:3306/${생성한 스키마}?serverTimezone=Asia/Seoul
    driver-class-name: com.mysql.cj.jdbc.Driver
    username: ${유저네임}
    password: ${패스워드}

야물파일에 야무지게 디비 연결 코드 작성해줍니다.

 

 

단두린더 - 2023-04-05 06_38_37.sql
0.00MB

이건 일단 테이블 생성용 sql 파일.

혹시몰라서 업로드해둔다.

 

 

 

Git 에 프로젝트 push

https://github.com/duburani/Dandulendar.git

사실.. 오늘까지 한 모든 일 중에 제일 힘들었다... 깃... 다른 사람과 협업은 처음이라서 진짜 하는 방법 완전 헤매고 다시 설치하고 다시 하고...

 

정리하자면

개발자 수민(팀장), 예담이 있으면

 

 

1. 설정을 마친 프로젝트 깃에 올림 (수민)

  • 설정 -> Collaborators 팀원 예담이를 접근 권한 부여
  • 팀원 예담이는 자신에게 온 초대를 허락

 

2. 예담이는 수민의 깃 주소를 복사하여 떨구고 싶은 폴더에서 { git clone 깃주소 } 를 외쳐줌!

3. 프로젝트 내에서 각자 브랜치를 생성해서 작업을 시작함. (수민 duburani 예담 damdorong)

4. duburani 브랜치에서 작업을 하고 완료되면 commit

5. 커밋한 후 local의 main 브랜치로 check out

6. main 브랜치에서 duburani의 커밋 내용을 머지

7. main 브랜치에서 fetch(변경내용확인, 머지되지 않음), pull(변경내용을 모두 받음) 을 통해 변경내역을 받은 뒤 원격저장소의 main으로 푸시

8. 다시 duburani 브랜치로 이동해서 모든 변경사항을 pull 받음

 

 

 

뭐든... 모든... 시작할 때 설정 잡아주는 게 제일 힘든 것 같다.. 흑흑