【SpringBoot】3--集成hikari

本文介绍了如何在Spring Boot应用中集成HikariCP数据库连接池,包括Hikari的特点、配置属性的修改,以及在pom.xml、TestHikari测试类和application.yml中的具体操作步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



hikari数据库连接池

  • (1)Hikari 光
  • (2)Hikari 是什么?
    HikariCP是现在比较快,而且轻量的连接池
  • (3)Hikari 有什么特点
    Hikari是一款非常强大,高效,并且号称“史上最快连接池
    在springboot2.0之后,采用的默认数据库连接池就是Hikari。
    不需要引入依赖,已经在SpringBoot中包含了。

GitHub地址:https://github.com/brettwooldridge/HikariCP

修改hikari的配置属性:

spring:
  datasource: # hikari
  driver-class-name: com.mysql.cj.jdbc.Driver # mysql 8
    username: root
    password: 123456
    url: jdbc:mysql://localhost:3306/springboot_test

  # 修改Hikari 连接池配置
  # 最小空闲连接数量
  hikari:
    minimum-idle: 5
    # 空闲连接存活最大时间,默认600000(10分钟)
    idle-timeout: 180000
    # 连接池最大连接数,默认是10
    maximum-pool-size: 10
    # 此属性控制从池返回的连接的默认自动提交行为,默认值:true
    auto-commit: true
    # 连接池名称
    pool-name: MyHikariCP
    # 此属性控制池中连接的最长生命周期,值0表示无限生命周期,默认1800000即30分钟
    max-lifetime: 1800000
    # 数据库连接超时时间,默认30秒,即30000
    connection-timeout: 30000
    connection-test-query
### Spring Boot 集成 Sharding-JDBC 实现分库分表最佳实践 #### 一、环境准备 为了顺利集成Sharding-JDBC,在开始之前需准备好Java开发环境以及Maven构建工具。确保已安装JDK并设置好环境变量,同时确认本地或远程数据库服务正常运行。 #### 二、引入依赖项 在`pom.xml`文件中加入必要的Maven依赖来支持Spring Boot与Sharding-JDBC的协作: ```xml <dependency> <groupId>org.apache.shardingsphere</groupId> <artifactId>sharding-jdbc-spring-boot-starter</artifactId> <version>${shardingjdbc.version}</version> </dependency> ``` 此操作使得项目能够利用Sharding-JDBC提供的功能特性[^1]。 #### 三、配置数据源 编辑application.yml或application.properties文件定义多个逻辑/物理数据源连接信息,例如主机地址、端口号、用户名密码等参数。对于每个真实存在的数据库实例都需要单独声明其对应的DataSource Bean对象。 ```yaml spring: shardingsphere: datasource: names: ds_0,ds_1 ds_0: type: com.zaxxer.hikari.HikariDataSource driver-class-name: com.mysql.cj.jdbc.Driver jdbc-url: jdbc:mysql://localhost:3306/db_name?serverTimezone=UTC&useSSL=false username: root password: pwd ds_1: type: com.zaxxer.hikari.HikariDataSource driver-class-name: com.mysql.cj.jdbc.Driver jdbc-url: jdbc:mysql://localhost:3307/db_name?serverTimezone=UTC&useSSL=false username: root password: pwd ``` 上述配置指定了两个不同的MySQL数据库作为分布式系统的组成部分之一[^2]。 #### 四、设定规则策略 继续完善YAML配置文档中的sharding部分,指定具体的分片算法(如基于日期范围、哈希取模)、键生成器以及其他高级选项。这一步骤决定了应用程序如何分配查询请求到各个子集内存储节点上去执行。 ```yaml rules: sharding: tables: t_order: actual-data-nodes: ds_${0..1}.t_order${0..1} table-strategy: standard: sharding-column: order_id precise-algorithm-class-name: xxx.PreciseModuloDatabaseShardingAlgorithm key-generate-strategy: column: order_id key-generator-class-name: org.apache.shardingsphere.core.keygen.DefaultKeyGenerator ``` 这里展示了针对订单表`t_order`所采取的一套完整的路由机制设计思路。 #### 五、编写实体类和服务层接口 按照常规方式创建相应的Entity映射关系及Repository访问仓库组件即可完成整个流程搭建工作。值得注意的是,由于存在多份副本的缘故,因此建议开发者们尽可能保持各张表格结构一致以便于后期维护管理。 通过以上五个方面的工作可以较为全面地掌握Spring Boot环境下部署实施Sharding-JDBC解决方案的方法论体系。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值