인프런 커뮤니티 질문&답변

윤창호님의 프로필 이미지

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

Spring Boot / MySql db연동

해결된 질문

작성

·

2.1K

0

H2 데이터베이스를 사용해봤던터라 기존에 MySql을 이용하여 db 생성을하고 build.gradle에 추가해주었는데요 혹시 버전차이 때문일까요? properties에 com.mysql.cj~ 이부분 읽지를 못하네요. 확인해보니 gradle에서 build자체가 안되는 것같은데 혹시 부트 version이 문제가 될까요?

답변 2

3

윤창호님의 프로필 이미지
윤창호
질문자

해결했습니다. 일단 properties의 경우 아래와 같이 jpa와 같이 설정을 해주어야 하고

제가 생각했을 때 MySql version이 8.xx로 넘어오면서 driver-class name이 com.mysql.cj.jdbc.Driver로 변경되었고

 

spring.datasource.url=jdbc:mysql://localhost:3306/hi-spring?useSSL=false&serverTimezone=Asia/Seoul
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=
spring.datasource.password=

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

 

Gradle에 dependecy 줄 때 image꼭 mysql-connector를 8.xx 이상으로 build해야지 정상 작동하는 것 같습니다. 어떻게 보면 당연할 수도있지만 저도 굉장히 많은 시간이 걸렸고 혹시나 h2 database말고 MySql을 사용하시는 분 중 저처럼 헤메는 분이 있다면 참고하시면 좋겠습니다. 굉장히 오랜시간을 할애했거든요 ㅠㅠ

2

안녕하세요. 윤창호님, 공식 서포터즈 OMG입니다.
.

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

두 가지 방식 확인해보시겠어요?

해당 properties파일에 spring.datasource.driver-class-name이 이미 h2로 작성되어 있는지도 확인해주세요.

위 사항에 해당하지 않는다면 mysql의존성이 추가되지 않은것 같은데요.

build.gradle과 인텔리제이 우측의 Gradle을 클릭하여 제가 첨부한 이미지 영역을 확인하시고 해결이 안될 경우 캡쳐해서 올려주세요.

image
.
감사합니다.