程序员的知识教程库

网站首页 > 教程分享 正文

《JDBC》第18节:JDBC之数据库连接池Hikari的使用(软编码方式)

henian88 2024-10-14 10:04:31 教程分享 57 ℃ 0 评论

#长文创作激励计划#

《JDBC》第18节:JDBC之数据库连接池Hikaricp的使用(软编码方式)

前面介绍了druid数据库连接池的使用,这里再介绍另外一种数据库连接池技术,即:hikaricphikaricp数据库连接池相比于druid连接池来说,它更加的简单,高效,快速,如果你的项目是追求的执行效率,那么可以考虑hikaricp连接池,但是你想要更好的扩展性,那么就要选择druid连接池啦,因为hikaricp连接池的扩展性没有druid的灵活。

hikaricp连接池的使用方式和druid连接池是相似的,只不过有些方法名称和配置属性略有差异。前一个小节介绍了Hikaricp硬编码的使用方式,硬编码方式不利于程序的扩展和维护,实际开发中是不推荐使用的,所以,这一小节介绍一下,如何使用软编码的方式来创建hikaricp数据库连接池。

1.1、引入依赖

使用hikaricp连接池,需要先引入hikaricp依赖,注意:hikaricp是位于com.zaxxer坐标下的依赖,并且hikaricp 5.x版本开始,需要使用JDK17版本。

<!-- https://mvnrepository.com/artifact/com.zaxxer/HikariCP -->
<dependency>
    <groupId>com.zaxxer</groupId>
    <artifactId>HikariCP</artifactId>
    <version>4.0.3</version>
</dependency>

1.2、软编码使用方式

Hikaricp和Druid连接池不同,它没有提供对应的工厂类来创建数据源对象,Hikaricp是将配置属性封装成了一个HikariConfig配置对象,这个HikariConfig配置对象中保存的是数据库连接信息,以及数据库连接池相关的配置信息。

1.3、创建hikaricp.properties配置文件

在【src/main/resources】目录下,创建一个hikaricp.properties配置文件,将数据库的连接信息以及连接池配置信息,全部写入这个配置文件里面,后面程序读取这个配置文件即可。

driverClassName=com.mysql.cj.jdbc.Driver
jdbcUrl=jdbc:mysql://127.0.0.1:3306/jdbc-study?useInformationSchema=true
username=root
password=root
# 最小空闲连接数量
minimumIdle=5
# 最大数量
maximumPoolSize=10

如下图所示:

1.4、完整使用代码

数据库连接池使用的第一步,都是要创建数据源对象,Hikaricp连接池提供了一个HikariDataSource数据源对象,直接使用new关键字,创建一个HikariDataSource对象就可以使用啦。

然后,采用软编码的方式创建数据源时候,需要先创建HikariConfig配置对象,然后将该配置对象作为HikariDataSource构造方法的参数,这样就创建好了Hikaricp连接池。

package com.gitcode.jdbc.chapter18.hikaricp;

import com.gitcode.jdbc.chapter16.druid.DruidConfigDemo;
import com.zaxxer.hikari.HikariConfig;
import com.zaxxer.hikari.HikariDataSource;

import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;

/**
 * @author ZhuYouBin
 * @version 1.0.0
 * @date 2024/7/8 20:56
 * @description Hikaricp软编码方式
 */
public class HikaricpConfigDemo {
    public static void main(String[] args) throws IOException, SQLException {
        // 1、加载配置文件
        Properties prop = new Properties();
        InputStream is = DruidConfigDemo.class.getClassLoader().getResourceAsStream("hikaricp.properties");
        prop.load(is);
        // 2、创建 hikaricp 配置类
        HikariConfig hikariConfig = new HikariConfig(prop);
        // 3、创建数据源对象
        HikariDataSource dataSource = new HikariDataSource(hikariConfig);
        // 4、获取数据连接
        Connection connection = dataSource.getConnection();
        System.out.println(connection);
        // 关闭连接池
        dataSource.close();
    }
}

1.5、源代码获取

源代码地址:

https://gitcode.com/qq_39826207/jdbc-study/tree/chapter-jdbc-18-hikaricp

今天就到这里,未完待续~~

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表