[BackEnd] MySQL DB 생성, SpringBoot 연동

0woy·2024년 1월 20일
1

개발

목록 보기
1/1
post-thumbnail

대학교 팀원들과 PAEI 서비스를 개발을 시작했다.
BackEnd 개발을 진행하면서 발생한 에러 및 진행 상황에 대한 일지를 작성하고자 한다.


📕 SpringBoot 프로젝트 설정

spring initializr를 이용해 위와 같이 의존성을 추가 해준 후 프로젝트를 실행한다.


📒 DB 스키마 & 사용자 생성 및 권한 부여

(1) root 계정으로 접속하여 빨간 표시를 눌러 Schema를 생성한다.

(2) Server > Users and Privileges 를 선택하면 아래와 같은 화면이 뜬다.

(3) Add Account를 선택 후, 사용자 생성 및 권한을 설정한다.

(4) 사용자와 Schema를 생성했으니 메인화면으로 돌아와 Connection을 생성한다.

생성한 비밀번호, 사용자 이름은 SpringBoot와 연동 시에 필요한 정보이니 잊지 말자.


📗 테이블 생성

SQL문을 이용해 기본키member_id인 Member 테이블을 생성한다.

CREATE TABLE Member(
  member_id BIGINT,
  name VARCHAR(20),
  major VARCHAR(40),
  party_list JSON,
  account VARCHAR(30),
  create_at DATETIME
  
  PRIMARY KEY(member_id)
  );
  

1) Memeber 테이블

속성도메인설명
member_idLong사용자아이디, PRIMARY KEY
nameString사용자 이름
majorString학과
party_listJSON소속된 파티 리스트
accountString계좌
create_atDATETIME생성일자

2) Party 테이블

속성도메인설명
party_idLong파티 아이디, PRIMARY KEY
nameString파티 이름
categoryenum태그
max_countInteger파티 최대 정원
participant_countInteger파티 현재 인원
descriptionString설명
receive_atString수령 장소
create_atDATETIME생성일자
create_byLONG생성자
modified_atDATETIME수정일자
modified_byLONG수정자

테이블을 생성한 후 임의로 데이터를 넣어주었다.


📘 SpringBoot & MySQL 연동

생성 당시 JPA를 추가해 줬다면 build.gradle 파일에 하단처럼 추가돼 있을 거다. 추가하지 않았다면 똑같이 작성하면 된다.

데이터 베이스 이름, 사용자 이름 그리고 비밀번호는 숨겨야하기 때문에 나는 application-secret.properties 파일을 생성 하고 아래와 같이 작성했다.

spring.datasource.url=jdbc:mysql://localhost:3306/DB이름
spring.datasource.username=사용자 이름
spring.datasource.password=비밀번호

그리고 application.properties로 이동하여 하단과 같이 입력해 주면 정보를 숨긴 채로 연동할 수 있다.

Github 저장소에 올라가지 않도록 .gitignoreapplication-secret.properties 파일을 추가한다.


✨ 마무리

SpringBoot 프로젝트 생성, MySQL DB 생성 그리고 MySQL와 SpringBoot 프로젝트 연동이 끝났다.

다음에는 DB에 저장된 정보를 화면에 띄워보도록 하겠다.

0개의 댓글