数据源Hikarcp

6 篇文章 0 订阅

数据源Hikarcp

高速的jdc连接池,springboot2.0默认使用Hikarcp数据源

Hikarcp与其他数据源相比较(比较的都是一些国外比较流行的数据源,druid数据源并没有相比较,具官方说druid数据源监控性能比较好,侧重点不一样):https://www.wix.engineering/post/how-does-hikaricp-compare-to-other-connection-pools

HikariCP连接池示例:https://examples.javacodegeeks.com/enterprise-java/hikaricp/hikaricp-connection-pooling-example/

github:https://github.com/brettwooldridge/HikariCP

1.依赖maven(jdk1.8)

    <dependency>
        <groupId>com.zaxxer</groupId>
        <artifactId>HikariCP</artifactId>
        <version>3.4.5</version>
    </dependency>

2.使用文档:https://github.com/brettwooldridge/HikariCP/wiki/Down-the-Rabbit-Hole

例如:

①:FastList

在这里插入图片描述

FastList代替ArrayList,它的速度比ArrayList快

②:ConcurrentBag(并发相关的自定义无锁的一个集合)
在这里插入图片描述

是从 C# .NET ConcurrentBag class,借鉴而来,做了一些优化

③:需要注意的三件事

在这里插入图片描述

3.整合到springboot中

引入数据源mysql和mybatis

①:导入maven

 <!-- mysql 驱动-->
        <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.20</version>
        </dependency>
        <!--mybatis -->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.3</version>
        </dependency>

②:配置数据源

spring:
  datasource:    #数据源相关配置
    type: com.zaxxer.hikari.HikariDataSource #数据源类型HikariCP
    driver-class-name: com.mysql.cj.jdbc.Driver #mysql驱动
    url: jdbc:mysql://122.152.207.115:3306/demo?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true
    username: root
    password: hwsk5203
    hikari:
      connection-timeout: 30000 #等待连接池分配连接的最大时长(毫秒),超过这个时长还没可用的连接则发生SQ
      minimum-idle: 5                 # 最小连接数
      maximum-pool-size: 20           # 最大连接数
      auto-commit: true               # 自动提交
      idle-timeout: 600000 #连接超时的最大时长(毫秒),超时则被释放(retired),默认:10分钟
      pool-name: hikari-sso     # 连接池名字
      max-lifetime: 1800000 # 连接的生命时长(毫秒),超时而且没被使用则被释放(retired),默认:30分钟
      connection-test-query: SELECT 1 #连接的测试语句
        #connection-init-sql: SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci;
        #jpa:
        #show-sql: true
        #generate-ddl: false
        #properties:
        #hibernate:
        #ddl-auto: none
      #format_sql: true
mybatis:
  type-aliases-package: com.river.pojo          # 所有POJO类所在包路径
  mapper-locations: classpath:mapper/*.xml      # mapper映射文件

然后就可以运行访问HelloWord了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值