将 Spring 云连接器与 HikariCP 一起使用

Using Spring Cloud Connectors together with HikariCP

我想使用 Spring 云连接器中的 HikariCP。我不确定如何进行...

我已将我的 Spring 云连接器更新到 1.2.0.RC1。

这是我当前的配置:

@Configuration
@Profile({ Profiles.CLOUD })
public class CloudDataSourceConfiguration extends AbstractCloudConfig {

    @Bean
    public DataSource dataSource() {
        int dbcpMaxActive = 10;
        int dbcpMaxWait = 200;
        PoolConfig poolConfig = new PoolConfig(dbcpMaxActive, dbcpMaxWait);
        ConnectionConfig connectionConfig = new ConnectionConfig("sessionVariables=sql_mode='ANSI';characterEncoding=UTF-8");
        DataSourceConfig serviceConfig = new DataSourceConfig(poolConfig, connectionConfig);
        return connectionFactory().dataSource("CLEARDB_DATABASE", serviceConfig);
    }
}

有人可以指点一下吗?

编辑:当我用云配置文件启动应用程序时,我可以阅读

 2015-05-23 22:46:56,029 [localhost-startStop-1] INFO  org.springframework.cloud.service.relational.PooledDataSourceCreator - Found Tomcat high-performance connection pool on the classpath. Using it for DataSource connection pooling.

来自日志输出。

edit 2: HikariCP 在类路径中,似乎 tomcat 高性能连接池也在类路径中。

如我第二次编辑所述,tomcat jdbc 和 HikariCP 都在类路径中。通过如下删除 tomcat jdbc(在我的 gradle 脚本中):

compile("org.springframework.boot:spring-boot-starter-data-jpa"){
            exclude group: 'org.apache.tomcat', module: 'tomcat-jdbc'
        }

只有 HikariCP 保留在类路径中并且被正确拾取,如下面的日志输出所示:

INFO  org.springframework.cloud.service.relational.PooledDataSourceCreator - Found HikariCP on the classpath. Using it for DataSource connection pooling.