• 在SpringBoot 1.5.3上使用gradle引入hikariCP


    在SpringBoot 1.5.3上使用gradle引入hikariCP

    hikari来源于日语,是“光”的意思,号称“史上最快数据库连接池”,也是springboot2.0最新版默认的连接池。但是springboot1.5.x的项目也是可以使用的。

    springboot1.5.x默认的数据库连接池是tomcat-jdbc连接池,要迁移到hikari连接池只需要几步配置上的修改:

    build.gradle文件

    1、先将默认的tomcat connnection pool从依赖中移除

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

    2、引入依赖

    compile group: 'com.zaxxer', name: 'HikariCP', version: '3.4.1'

    3、application.properties文件中配置连接池属性

    spring.datasource.type=com.zaxxer.hikari.HikariDataSource
    spring.datasource.hikari.pool-name=SomeThingHikariCP
    spring.datasource.hikari.minimum-idle=5
    spring.datasource.hikari.idle-timeout=600000
    spring.datasource.hikari.maximum-pool-size=20
    spring.datasource.hikari.auto-commit=true
    spring.datasource.hikari.max-lifetime=1800000
    spring.datasource.hikari.connection-timeout=6000
    //spring.datasource.hikari.connection-test-query=SELECT 1 FROM DUAL   //配置了这个query则每次拿连接的时候用这个query测试,否则就使用java.sql.ConnectionisValid测试  推荐jdbc4不配

    原来的spring.datasource.tomcat.xxxx就需要注释掉了。

    重启工程,控制台中会见到如下日志

    ...

    com.zaxxer.hikari.HikariDataSource [110] - AppUserHikariCP - Starting...
    com.zaxxer.hikari.pool.PoolBase [527] - AppUserHikariCP - Driver does not support get/set network timeout for connections. (com.mysql.jdbc.JDBC4Connection.getNetworkTimeout()I)
    com.zaxxer.hikari.HikariDataSource [123] - AppUserHikariCP - Start completed.

    ...

    说明数据库连接池迁移成功。

    出现上面红字需要升级一下mysql驱动,笔者是把mysql-connector-java从5.1.18升级到5.1.47解决了这个问题。但是似乎有这个提示也可以正常使用。

  • 相关阅读:
    WinDbg常用命令系列---线程相关操作~*
    WinDbg常用命令系列---?*
    使用WinDbg调试入门(内核模式)
    java基础-stringAPI
    springboot-集成WebSockets广播消息
    sprincloud-Feign配置二
    springcloud-Feign配置一
    springboot-集成jdbcTemplate
    spingboot2.x集成单元测试
    springboot跨域CORS处理
  • 原文地址:https://www.cnblogs.com/lyhero11/p/12097593.html
Copyright © 2020-2023  润新知