DevChw
인생을 모험하는 개발자
DevChw
전체 방문자
오늘
어제
  • 전체보기 (33)
    • 모험가의 Spring (24)
      • Spring (21)
      • Spring 이론 (1)
      • Spring Project (0)
      • Spring Exception (2)
    • 모험가의 Node-js (0)
    • 모험가의 끄적노트 (9)
      • 진행했던 프로젝트 (2)
      • Study (6)
    • 모험가는 계발중 (0)
    • 모험가의 공상일기 (0)
    • 모험가는 여행중 (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 앱개발
  • 앱
  • 바다거북수프
  • 바다거북스프

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
DevChw

인생을 모험하는 개발자

Spring 기초 : Mysql + Spring 연동
모험가의 Spring/Spring

Spring 기초 : Mysql + Spring 연동

2022. 7. 17. 14:23

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

 

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

 

시작하기전, 아래 사항들을 충분히 숙지해두자.

 

0. Mysql 설치 및 사용

https://itstudy402.tistory.com/12

 

맥 OS 에서 MySql 사용하기

맥 OS에서 MySql 사용하는 방법을 알아보도록 하겠습니다. MySql은 정말 많은 사람들이 사용하는 DB인 것 같습니다. 이제 시작하는 초보 개발자분들부터 상급 개발자까지 폭넓게 사용하고 있습니다.

itstudy402.tistory.com

 

1. Sequel Ace 간단한 사용법

https://da-young.tistory.com/entry/%F0%9F%8D%8E-Mac-%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EC%95%B1-Sequel-Ace-%F0%9F%8D%8E

 

🍎 Mac 데이터베이스 앱 : Sequel Ace 사용 방법 🍎

Sequel Ace는 MySQL 및 MariaDB 데이터베이스 작업을 위한 Mac 데이터베이스 관리 애플리케이션이다. 업무를 할때 자주 사용하는 애플리케이션인데 개인적으로는 편리하다. Sequel Ace 다운링크 데이터 베

da-young.tistory.com

 

2. mysql workbench 간단한 사용법

 

https://velog.io/@coreminw/MySQL-Workbench-%EC%82%AC%EC%9A%A9%EB%B0%A9%EB%B2%95

 

MySQL Workbench 사용방법

워크벤치 사용방법 간단정리!0번째: 사전에 DB설계서를 작성해놓아야한다첫번째: 워크벤치를 실행한다두번째: Local instance 3306에 접속한다 (클릭하면 패스워드가 뜰텐데.. 입력하면 됨 ㅎㅎ..)세

velog.io

 

3. mysql server 실행

 

% mysql.server start // mysql 사용을 위해 터미널에서 항상 서버를 키는것을 잊지말자 !

 


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

 

 

(option + shift + A)

: db 생성 커맨드

 

 

 

 

후에 작업하게될 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을 생성 후 아래와 같은 창이 뜬다면 성공이다 !

 

table 구조

 

이제 테이블까지 완성하였으니, Spring Boot와 Mysql을 연동해보도록 하자. 첫번째로 할것은 의존성(dependencies)를 추가해줘야한다. 1편에서 다룬 폴더구조에서 bulid.gradle 라는 파일로 들어가보면 dependencies 라는 필드가 있는데 이 안에서 사용하려하는 dependencies를 추가해주면 된다. 우리는 Mysql 을 사용해야하기 때문에 아래 코드를 추가해주면 된다.

 

implementation 'mysql:mysql-connector-java'

 

그 후 커맨드를 이용해 " Shift + cmd + I " 로 gradle의 변경된 내용을 로드 해주면 알아서 mysql을 추가해서 빌드해준다.

이제 내가 만들고있는 프로젝트 안에 mysql을 사용할 수 있게 만들었으니, 내 로컬 서버와 연결을 시키면 된다.

 

폴더구조

 

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> 부분만 잘 입력해주면 정상적으로 연결이 될 것이다.

password는 mysql 를 설치하고 처음 접속시 비밀번호를 설정할때 해둔 비밀번호를 입력하면 된다.

 

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

'모험가의 Spring > Spring' 카테고리의 다른 글

Spring을 이용한 CRUD 구현_Create  (0) 2022.07.26
Spring 기초 : SpringDataJpa 사용하기  (0) 2022.07.20
Spring 기초 : 간단한 회원정보 입력받기 + MYSQL + JPA  (0) 2022.07.17
Spring 기초 : controller를 이용한 간단한 데이터 주고받기  (0) 2022.07.16
Spring 공부에 들어가기전에  (1) 2022.07.16
    '모험가의 Spring/Spring' 카테고리의 다른 글
    • Spring 기초 : SpringDataJpa 사용하기
    • Spring 기초 : 간단한 회원정보 입력받기 + MYSQL + JPA
    • Spring 기초 : controller를 이용한 간단한 데이터 주고받기
    • Spring 공부에 들어가기전에
    DevChw
    DevChw
    자기계발도 하면서 여행도 다니면서 취미도 즐기면서 모험도 하면서 살고싶은 개발자가 되고싶은 초보개발자

    티스토리툴바