どのように春にドライバクラスとみとめDataSourceを設定するには?

membersound:

なぜdriverclassは、次のような構成に欠けていますか?

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>

結果:

「URL」属性が指定されず、埋め込まれたデータソースを設定することはできなかった:データソースの設定に失敗しました。理由:最適なドライバクラスを決定するために失敗しました。

私も踏み入れることができますので、これは、奇妙であるorg.mariadb.jdbc.Driver、それはクラスパス上に明確であるので、クラス。

ライアンStuetzer:

あなたのように見えるだけ)(dataSourceTestに@Bean注釈を追加する必要があります。

@Bean
@ConfigurationProperties(prefix = "spring.datasource.testdb")
@Primary

また、(デフォルトの接続プールです)ひかり接続プールのため、urlプロパティは、JDBC-urlには、ないURLです。変更だから、

spring.datasource.testdb.url=jdbc:mariadb://localhost/mytable

spring.datasource.testdb.jdbc-url=jdbc:mariadb://localhost/mytable

詳細情報、および他の可能な解決策については以下を参照してください春ブーツ2.0移行後:jdbcUrlとはdriverClassNameで必要とされます

お役に立てれば。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=236814&siteId=1