【问题标题】:Spring Boot 2.1 App without HikariCP Connection pooler没有 HikariCP 连接池的 Spring Boot 2.1 应用程序
【发布时间】:2019-08-05 07:26:56
【问题描述】:

我想在没有任何连接池(在本例中为 HikariCP)的情况下使用我的 Spring Boot 2.1 应用程序,因为默认池是 HikariCP!

我应该如何继续执行此操作?

用例是我想为我的所有应用程序使用一个通用的数据库池(pgBouncer) 实例和其他应用程序! 当每个 Spring Boot 应用程序都使用自己的隐式连接池(HikariCP)运行时,我无法实现这一点。

我应该如何实现这个用例?这是通用数据库连接池的更好解决方案吗?

【问题讨论】:

    标签: java postgresql spring-boot hikaricp pgbouncer


    【解决方案1】:

    您可以通过 POM 排除 HikariCP。

    <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-jdbc</artifactId>
                <exclusions>
                    <exclusion>
                        <artifactId>com.zaxxer</artifactId>
                        <groupId>HikariCP</groupId>
                    </exclusion>
                </exclusions>
            </dependency>
    

    然后您可以使用您想要的任何数据源创建自己的JdbcTemplate。有关这方面的更多信息,请参阅此处Creating custom connection pool in Spring Boot application

    【讨论】:

      【解决方案2】:

      您也可以通过提供简单的驱动程序数据源来停用它:

      public DataSource datasource() throws SQLException {
          Driver driver = DriverManager.getDriver(url);
          SimpleDriverDataSource dataSource = new SimpleDriverDataSource(driver, url, username, password);
          return dataSource;
      }
      

      【讨论】:

        猜你喜欢
        • 2019-12-16
        • 2016-11-24
        • 2020-01-13
        • 1970-01-01
        • 2019-01-27
        • 1970-01-01
        • 2018-09-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多