본문 바로가기

Spring

(Mac) Spring 스터디 (1) - spring과 mysql 연동하기

spring 과 mysql을 연동해봐요!

 

우선 스프링 부트 프로젝트를 다운받겠습니다

 

https://start.spring.io/

 

일단 저는 Dependencies 에 Lombok, Spring Web, JPA만 넣었습니다. 

 

그리고 인텔리제이로 프로젝트 빌드하면 프로젝트 다운은 끗

 


 

두번째로 mysql을 설치해야겠어요

 

아마 installer로 설치하거나 터미널 사용해서 설치하는 방법이 있는데 저는 터미널로 설치하겠슴다

 

터미널 실행

 

Homebrew설치

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

 

Homebrew 경로 추가

# zshrc에 homebrew path 추가
$ echo 'export PATH=/opt/homebrew/bin:$PATH' >> ~/.zshrc
# zshrc 반영
$ source ~/.zshrc
#Homebrew 업데이트
$ brew update

 

 

Homebrew를 이용해 mysql 설치

$ brew install mysql

 

설치 후 mysql 환경설정 세팅

mysql_secure_installation

 

비밀번호 설정 및 외부접근권한 등을 설정합니다

 

모두 마쳤다면 터미널에 mysql -u root -p를 입력하면 mysql에 접속이 가능합니다.

 

# 실행화면
mysql>
# 종료하고싶다
mysql> exit
# mysql 서비스 종료하고싶다
$ brew services stop mysql

 

그리고 샘플 데이터베이스를 만들어보겠습니다

 

# db생성
mysql> CREATE DATABASE sampledb;

 

이제 spring 프로젝트와 연동을 해봐요

 

 

bulid.gradle 파일에 의존성 추가

dependencies {
implementation 'mysql:mysql-connector-java'
	implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
}

 

application.properties 에 DB정보 추가

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://<IP>:<Port번호>/<DB명>?useSSL=false&useUnicode=true&serverTimezone=Asia/Seoul

spring.datasource.username= <접속할 계정 이름(Username)>
spring.datasource.password= <Password>

spring.jpa.show-sql=true 
spring.jpa.hibernate.ddl-auto=update 
spring.jpa.properties.hibernate.format_sql=true

 

DataGrip이용해서 바인딩

 

host에 위에서 지정한 Username, Password에는 비밀번호, DB포트번호 입력, Database에는 사용할 데이터베이스 이름 입력 후 아래 Test Connection 클릭

 

 

 

 

저는 이렇게 뜹니당

 

JPA Hibernate 엔티티 생성

 

패키지 생성쓰

 

DemoEntity

@Table(name = "table_demo")
@Entity
public class DemoEntity {
    @Id
    @GeneratedValue
    private Long id;

    private String demoText;

}

 

그리고 서버 실행

 

 

쿼리문 만들어줌 굿

 

DataGrip 들어가서 테이블 확인

 

 

굿굿