[Spring + MySQL] 스프링과 MySQL 연동하기

Dev_ch·2022년 11월 4일
1
본 글은 2022.07.17에 작성된 게시글 입니다.

오늘은 Spring Boot 와 데이터베이스인 mysql을 연결하는 방법에 대해 알아보자 🙂

필자의 경우 mysql을 사용하면서 Sequel Ace 라는 MySQL/MariaDB 데이터베이스 작업을 위한 Mac 데이터베이스 관리 애플리케이션을 사용할 예정이다. 사용에 익숙치 않다면 mysql workbench를 이용해 DB 작업에 조금 더 편의성을 갖춰서 작업하도록 하자.

1. 준비사항


1. Mysql 설치 및 사용

MAC OS에서 MySQL 사용하기

2. Sequel Ace 사용법

Mac 데이터베이스 관리 앱 : SequelAce 사용법

3. mysql workbench 간단한 사용법

MySQL Workbench 사용방법

4. mysql server 실행

$ mysql.server start // mysql 사용을 위해 항상 서버를 키는 것을 잊지말자 !

(option + shift + A) db 생성 커맨드

서버를 실행한 후에 Sequel Ace를 통해 로컬로 서버를 접속한 후 DateBase Name을 study 라는 이름으로 생성하였다.

작업하게될 Spring Boot에서 간단한 회원정보 입력을 받기위해 테이블을 생성할 것인데 구조는 아래와 같다.

CREATE TABLE user (
  id int NOT NULL AUTO_INCREMENT,
  email varchar(255) DEFAULT NULL,
  name varchar(255) DEFAULT NULL,
  rog_date datetime DEFAULT NULL,
  mod_date datetime DEFAULT NULL,
  PRIMARY KEY (id)
);

중요한점은 id 값이 PRIMARY KEY로 데이터를 입력받는 것이 아닌 자동증가 할것이기 때문에 AUTO_INCREMENT 를 꼭 설정해주도록 하자. 여기서 AUTO_INCREMENT 를 설정하지 않는다면 나중에 이노테이션으로 id 값을 자동증가로 설정한다해도 테이블 내에서의 자동증가가 설정되지 않았다면 바로 오류가 나버리기 때문이다. 사실 필자도 이 문제가 발생해서 오류코드를 찾아보면서 수정했었다.

study라는 table을 생성 후 아래와 같은 창이 뜬다면 성공이다 !

이제 테이블까지 완성하였으니, Spring Boot와 Mysql을 연동해보도록 하자.

2. 연동


첫번째로 할것은 의존성(dependencies)를 추가해줘야한다. 프로젝트 내부의 bulid.gradle로 들어가서 dependencies 라는 필드가 있는데 이 안에서 사용하려하는 dependencies를 추가해주면 된다. 우리는 MySQL 을 사용해야하기 때문에 아래 코드를 추가해주면 된다.

implementation 'mysql:mysql-connector-java'

그리고 gradle의 변경된 내용을 로드해주자.

resources 항목에 application.properties 라는 설정파일로 들어가게 되면 처음에는 아무것도 입력되어 있지 않는데 이 부분에 내 mysql local 서버를 연결시켜주면 된다. 연결 시키는 법은 간단하게 아래 코드들을 적으면 된다.

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/study?characterEncoding=UTF-8&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=<자신이 설정한 mysql local 비밀번호>
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=update
spring.jpa.properties.hibernate.format_sql=true

url 부분에서 우리는 localhost:<포트번호>/<사용할DBname> 부분만 잘 입력해주면 정상적으로 연결이 될 것이다. username과 password는 mysql 를 설치하고 자신이 사용하려는 계정과 비밀번호를 입력해주면 정상적으로 연동이 될 것 이다.


이렇게 spring boot 와 mysql 을 연동하는 세팅은 끝났으며, 다음은 간단하게 회원정보를 입력 받아보도록 하자 😉

profile
내가 몰입하는 과정을 담은 곳

0개의 댓글