MySQL-Spring 연동

Weed·2024년 4월 30일
0

Blog 개발

목록 보기
2/2
post-thumbnail

MySQL 시작

MySQL 서버 시작


MySQL 서버를 시작해주고, mysql -u root -p로 비밀번호를 입력 후 MySQL을 시작해주자

MySQL 데이터베이스 생성


Workbench에서 connection Name을 root로 설정해주고 password를 입력해준 후 Test Connection을 클릭하면 Successful이 뜰 것이다.

root에 들어간 후 해당 명령어를 입력해주자
1. user을 생성
2. user에 권한 부여
3. 데이터베이스 생성

MySQL-Spring 연동

이제 데이터베이스도 생성했으면, 만들었던 Spring 프로젝트와 연동해야 한다. 자동으로 연동은 ❌

Spring boot 의존성 부여


JPAMySQL에 대해서 의존성을 부여해주면 된다.
이 때 MySQL은 버전 8.0.xx 버전 이후로는 위 사진처럼 입력해야 제대로 작동하는 듯 싶다.

프로젝트 설정 (application.yml)

본래에는 gradle로 프로젝트를 생성 시 application.properites가 생성이 되지만, 편의성을 봐서 yml로 바꿔주었다.

기본적으로 입력해야 하는 것은 위 4가지이다.

  • MySQL 설정: 위 사진과 그대로 작성하면 된다.
  • URL: jdbc:mysql://[IP주소]/[데이터베이스 이름]?characterEncoding=UTF-8&serverTimezone=UTC

    IP주소는 생성했전 MySQL Connection의 주소를 그대로 쓰면 된다. 데이터베이스 주소는 위에서 만들었던 이름을 그대로 작성
  • username / Password: 설정했던 username과 Password을 그대로 작성

❗️ yml vs properties
Spring Initializr로 프로젝트를 생성 시 기본적으로 application.properties가 생성된다. 하지만 편의성으로 인해 많은 사람이 applcation.yml로 수정하여 프로젝트 설정을 한다.
위 두 파일은 구조적으로 차이가 있다.

application.properties

spring.datasource.driver-class-name = com.mysql.cj.jdbc.Driver
spring.datasource.url = jdbc:mysql://[IP주소]/[데이터베이스 이름]?characterEncoding=UTF-8&serverTimezone=UTC
spring.datasource.username = [사용자 이름]
spring.datasource.password = [비밀번호]

properties는 key=value 구조로 이루어져 있다. 위 코드에서 보시다시피 각 줄 모두 spring.datasource는 공통적으로 포함하고 있다.

application.yml

spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://[IP주소]/[데이터베이스 이름]?characterEncoding=UTF-8&serverTimezone=UTC
    username: [사용자 이름]
    password: [비밀번호]

yml은 들여쓰기를 통해 key:value구조로 이루어져 있다. properties와 다르게 공통 부분인 sprin, datasource는 한번만 작성했다.

profile
개발자로 전직해보자

0개의 댓글