개발/JPA

spring boot & JPA & mysql(mariadb) 세팅 및 연동

nix-be 2021. 1. 21. 22:41
728x90

사전 작업 :  window에 mysql & mariadb 설치, DB 생성 , DB 계정 생성 및 password 설정

 

 

1. Build.gradle 사용할 때 

 

아래 추가  mariadb

implementation 'org.springframework.boot:spring-boot-starter-data-jpa'

runtimeOnly 'org.mariadb.jdbc:mariadb-java-client' // MariaDB

 

다른 DB 참고용

runtimeOnly 'com.h2database:h2' // H2

runtimeOnly 'com.microsoft.sqlserver:mssql-jdbc' // MSSQL

runtimeOnly 'mysql:mysql-connector-java' // MYSQL

runtimeOnly 'org.postgresql:postgresql' // PostgreSQL

 

 

pom.xml

Maven 사용할 때

<dependency>

   <groupId>org.springframework.boot</groupId>

   <artifactId>spring-boot-starter-data-jpa</artifactId>

</dependency>

<dependency>

   <groupId>org.mariadb.jdbc</groupId>

   <artifactId>mariadb-java-client</artifactId>

   <scope>runtime</scope>

</dependency>

 

2. Application.properties 파일

 

spring.datasource.url=jdbc:mariadb://127.0.0.1:3306/local?serverTimezone=UTC&characterEncoding=UTF-8

spring.datasource.username=admin

spring.datasource.password=(계정 패스워드)

spring.jpa.show-sql=true (JPA 쿼리 확인)
spring.jpa.hibernate.ddl-auto=create (DB 자동생성)

 

설명 :

spring.datasource.url=jdbc:mariadb://mysql 설치된 ip 주소:DB 포트 주소/DB 명?serverTimezone=UTC&characterEncoding=UTF-8

개발하는 윈도우 pc에 mariadb를 설치하셨으면 ip는 127.0.0.1과 동일합니다.

spring.datasource.username= 사전작업에서 생성한 DB계정

spring.datasource.password= 위 계정에 대한 패스워드

 

이렇게 하면 세팅은 끝나고 바로 개발을 하시면 될 것입니다.

 

##################################################

Application.properties 파일 내용을 안 적으면 실행 오류가 남

##################################################

 

Process 'command '  java 경로 finished with non-zero exit value 1  이슈가 남 

잘못 적어도 이슈가 나옵니다.

 

예를 들어 : gradle 에서는 runtimeOnly 'org.mariadb.jdbc:mariadb-java-client' 사용하고

Application.properties 파일에서 spring.datasource.url=jdbc:mariadb <- 이 부분을  mysql 수정하면 이슈가 나옴

 

 

 

#############################################

프로젝트 개발도 중 mariadb 연결 부분이 안 되는 현상 발생

#############################################

DB : mariadb 사용 중

1. Build.gradle  내용 변경

 

implementation 'org.springframework.boot:spring-boot-starter-data-jpa'

runtimeOnly 'mysql:mysql-connector-java' // MYSQL

 

 

2. Application.properties 파일

 

spring.datasource.url=jdbc:mysql://127.0.0.1:3306/local?serverTimezone=UTC&characterEncoding=UTF-8

                                   위 부분 변경 

spring.datasource.username=admin

spring.datasource.password=(계정 패스워드)

spring.jpa.show-sql=true (JPA 쿼리 확인)
spring.jpa.hibernate.ddl-auto=create (DB 자동생성)

 

728x90