Why is the driverclass missing in the following configuration?
spring.datasource.testdb.url=jdbc:mariadb://localhost/mytable
spring.datasource.testdb.driver-class-name=org.mariadb.jdbc.Driver
spring.datasource.testdb.username=test
spring.datasource.testdb.password=test
@Configuration
public class DataSourceConfig {
@ConfigurationProperties(prefix = "spring.datasource.testdb")
@Primary
public DataSource dataSourceTest() {
return DataSourceBuilder.create().build();
}
@Bean
@Primary
public JdbcTemplate jdbcTemplateTest() {
return new JdbcTemplate(dataSourceTest());
}
//secondary db config to follow
}
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.mariadb.jdbc</groupId>
<artifactId>mariadb-java-client</artifactId>
</dependency>
</dependencies>
Result:
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
This is strange, because I can even step into the org.mariadb.jdbc.Driver
class, so it is clearly on classpath.