在yml文件中我们可以通过spring:data:source:type指定连接池,通过配置type为com.zaxxer.hikari.HikariDataSource指定HikariCP做为连接池,如果使用springboot 2.0及以上不配置type默认使用HikariCP:

spring:
  datasource:
    url: jdbc:mysql://127.0.0.1:3306/dbname
    username: root
    password: Droot
    driver-class-name: com.mysql.jdbc.Driver
    type: com.zaxxer.hikari.HikariDataSource
    hikari:
      # 连接池中允许的最小连接数。缺省值:10
      minimum-idle: 10
      # 连接池中允许的最大连接数。缺省值:10
      maximum-pool-size: 20
      # 自动提交 默认值为 true
      auto-commit: true
      # 连接允许在池中闲置的最长时间,一个连接idle状态的最大时长(毫秒),超时则被释放(retired),缺省:10分钟
      idle-timeout: 600000
      # 连接池名字,用于日志和监控
      pool-name: mysql-pool
      # 一 个连接的生命时长(毫秒),超时而且没被使用则被释放(retired),缺省:30分钟,建议设置比数据库超时时长少30秒
      max-lifetime: 600000
      # 等待连接池分配连接的最大时长(毫秒),超过这个时长还没可用的连接则发生SQLException, 缺省:30秒
      connection-timeout: 30000
      #连接测试查询语句,用于验证连接是否有效
      connection-test-query: select 1
      #验证连接有效性的超时时间,单位为毫秒,默认值 5000 毫秒(5 秒)
      validation-timeout: 30000
      #设置事务隔离级别,不配置此项默认遵从数据库的配置,读已提交TRANSACTION_READ_COMMITTED,此外还有读未提交TRANSACTION_READ_UNCOMMITTED,可重复度TRANSACTION_REPEATABLE_READ,串行化TRANSACTION_SERIALIZABLE
      transaction-isolation: TRANSACTION_READ_COMMITTED
      #是否将连接设置为只读模式,默认false
      readOnly: false