Spring
Spring Boot DB 오류해결
JeonInwoo
2020. 1. 20. 15:07
0. Github
https://github.com/hodolee246/on-my-own/tree/master/DBConfig
1. 개요
Spring Boot 프로젝트에서 오류 원인 및 해결방법
"Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured. Reason: Failed to determine a suitable driver class" ("데이터 소스를 구성하지 못하였습니다.")
2. 문제 및 원인
Maven 기준 pom.xml에 데이터베이스를 사용하기 위한 dependency가 존재하는 경우 @SpringBootApplication 에서 자동으로 데이터베이스 값을 설정하려고 시도하지만 사용자는 데이터베이스 값을 입력을 안했기에 발생하는 에러입니다.
아래의 오류가 발생을 하면서 프로젝트 실행에 실패 합니다.
Description:
Failed to configure a DataSource: 'url' attribute is not specified and no embedded
datasource could be configured.
Reason: Failed to determine a suitable driver class
3. 해결방법 (3중 1택)
3.1 application.properties 및 application.yml 파일에 데이터 소스를 추가
properties
spring.datasource.url=
spring.datasource.username=
spring.datasource.password=
spring.datasource.driver-class-name=
yml
spring:
datasource:
driver-class-name:
url:
username:
password:
3.2 Configuration 생성 (Bean을 이용하여 DB사용)
별도의 클래스를 생성해서 진행
@Configuration
public class DBConfiguration {
@Bean
public DataSource datasource() {
return DataSourceBuilder.create()
.driverClassName("")
.url("")
.username("")
.password("")
.build();
}
}
3.3 DataSourceAutoConfiguration 제외 (DB를 사용안한다는 의미)
springboot 생성 시 자동으로 생성되는 Application.class 입력
@SpringBootApplication(exclude={DataSourceAutoConfiguration.class})
public class Sample01Application {
public static void main(String[] args) {
SpringApplication.run(Sample01Application.class, args);
}
}