首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在SpringBoot1.5.18中使用多个数据源配置的HikariCP

无法在SpringBoot1.5.18中使用多个数据源配置的HikariCP
EN

Stack Overflow用户
提问于 2019-01-10 10:29:21
回答 1查看 503关注 0票数 0

我们在春季引导应用程序中使用多个数据源配置。这两个数据源都只属于mysql。

使用以下方法配置多个数据源:

https://medium.com/@joeclever/using-multiple-datasources-with-spring-boot-and-spring-data-6430b00c02e7

pom.xml changes:

代码语言:javascript
复制
<!-- exclude tomcat jdbc connection pool, use HikariCP -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-jdbc</artifactId>
    <exclusions>
        <exclusion>
            <groupId>org.apache.tomcat</groupId>
            <artifactId>tomcat-jdbc</artifactId>
        </exclusion>
    </exclusions>
</dependency>

<!-- exclude tomcat-jdbc, Spring Boot will use HikariCP automatically -->
<dependency>
    <groupId>com.zaxxer</groupId>
    <artifactId>HikariCP</artifactId>
</dependency>

.properties****

代码语言:javascript
复制
spring.db1.datasource.jdbcUrl=jdbc:mysql://localhost:3306/db1?zeroDateTimeBehavior=convertToNull
spring.db1.datasource.driverClassName=com.mysql.jdbc.Driver
spring.db1.datasource.username=root
spring.db1.datasource.password=

spring.db2.datasource.jdbcUrl=jdbc:mysql://localhost:3306/db2?zeroDateTimeBehavior=convertToNull
spring.db2.datasource.driverClassName=com.mysql.jdbc.Driver
spring.db2.datasource.username=root
spring.db2.datasource.password=

Datasource Bean Config:

代码语言:javascript
复制
@Bean
@ConfigurationProperties(prefix = "spring.db1.datasource")
public DataSource db1DataSource() {
    return DataSourceBuilder.create().build();
}


@Bean
@ConfigurationProperties(prefix = "spring.db2.datasource")
public DataSource db2Source() {
    return DataSourceBuilder.create().build();
}

但当我运行时,它得到了以下例外:

代码语言:javascript
复制
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.orm.jpa.JpaVendorAdapter]: Factory method 'jpaVendorAdapter' threw exception; nested exception is java.lang.IllegalArgumentException: jdbcUrl is required with driverClassName.

如何解决这个问题?

EN

回答 1

Stack Overflow用户

发布于 2019-01-11 00:13:45

在pom中缺少驱动程序依赖项。

您需要在pom.xml中添加以下行以包括数据库驱动程序。

代码语言:javascript
复制
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
    </dependency>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54126669

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档