代码之家  ›  专栏  ›  技术社区  ›  YazanLpizra

Spring Boot 2:如何使用应用程序配置HikariCP。属性文件

  •  3
  • YazanLpizra  · 技术社区  · 7 年前

    我对Spring和Spring Boot比较陌生,但我似乎找不到关于如何使用Spring Boot、Flyway和Spring Boot JPA创建应用程序的指南,这些应用程序实际上将在我的机器上运行。我总是会遇到同样的问题:

    Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: dataSource or dataSourceClassName or jdbcUrl is required.
    

    我正在尝试通过应用程序完全配置HikariCP。属性文件,但我似乎找不到方法。任何帮助都是非常感激的。

    我的完整堆栈跟踪以及相关Java代码和应用程序。属性文件如下所示:

    https://gist.github.com/anonymous/cb309a836ddae36f5e401697f763dde5

    2 回复  |  直到 7 年前
        1
  •  2
  •   Strelok    7 年前

    去除 PersistenceConfiguration 不需要对其进行分类。Spring Boot自动配置您和flyway要使用的数据源。

    HikariCP现在是spring boot 2中的默认池实现。

    还要从应用程序中删除所有与数据源相关的属性。属性除外 spring.datasource.url

        2
  •  1
  •   Francis Huang    6 年前

    您可以更新应用程序。要使用的属性

    spring.datasource.jdbc-url=...
    datasource.flyway.jdbc-url=...
    

    而不是

    .url=
    

    我也在学习Pluralsight课程 构建第一个Spring Boot应用程序

    我在另一本书中找到了答案 StackOverflow post 。Spring Boot 2将默认JDBC连接池从Tomcat更改为HikariCP,以提高性能。HikariCP期望不同的属性。

    在本教程中,多个数据源是可选的,这就是为什么删除PersistenceConfiguration时它可以工作的原因。Java语言