springboot|springboot 配置使用 hikaricp 数据库连接池

本贴最后更新于 1776 天前,其中的信息可能已经时过境迁

javaDEMO

Java 基础 Demo 站: https://www.javastudy.cloud
Java 中高级开发博客: https://www.lixiang.red
Java 学习公众号: java 技术大本营
java_subscribe

配置数据库连接池

数据库连接池通常来说有多种选择,有 dbcp2, tomcat, hikari 等等, 在 springboot 2.X 中, 现官方推荐使用的是 hikari 来连接数据库, 所以本 DEMO 以 hikari 为示例
参考文档:
https://github.com/brettwooldridge/HikariCP
https://github.com/brettwooldridge/HikariCP/wiki/About-Pool-Sizing
总体来说需要以下几步:
1.引入相关的依赖
2.添加相关的配置
3.进行测试

引入相关的依赖

只需要引 mybatis 和 mysql 的依赖就可以了, 在 mybatis-spring-boot-starter 里面已经帮我们引入了 hikaricp 的包

implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:2.1.1'
runtimeOnly 'mysql:mysql-connector-java'

添加相关的配置

在 application.properties 中添加以下配置
后面的数据可以参考以前 dbcp/tomcat 的配置,也可通过监控数据库的 qps 来设置,下面的参数只用于学习测试,切不可用于生产环境


spring.datasource.url=jdbc:mysql://localhost:33309/javastudy?characterEncoding=utf-8&allowMultiQueries=true&serverTimezone=GMT%2B8
spring.datasource.username=root
spring.datasource.password=javastudy
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver


spring.datasource.hikari.minimum-idle=4
spring.datasource.hikari.maximum-pool-size=10
spring.datasource.hikari.max-lifetime=60000
spring.datasource.hikari.connection-test-query=SELECT 1

测试数据库连接

测试代码如下:

@SpringBootTest
class DemoApplicationTests {

	@Resource
	private DataSource dataSource;

	@Test
	void contextLoads() {
		System.out.println(dataSource);
	}

}

通过断点可以看到:
相关连接池的配置已经设置到 datasource 里面了
image.png

DEMO 总评

数据库做为后端的基石,对其的每一点配置都与整体性能息息相关,建议数据库配置的修改要结合监控一起,不要盲目的看网上的博客去修改.同样在本示例中的参数也仅供学习和测试使用,加油吧,少年!

DEMO 下载

springbootpooldatasource.zip

  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3187 引用 • 8213 回帖
  • Spring

    Spring 是一个开源框架,是于 2003 年兴起的一个轻量级的 Java 开发框架,由 Rod Johnson 在其著作《Expert One-On-One J2EE Development and Design》中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 JavaEE 应用程序开发提供集成的框架。

    944 引用 • 1459 回帖 • 17 关注
  • MySQL

    MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。MySQL 是最流行的关系型数据库管理系统之一。

    690 引用 • 535 回帖
  • MyBatis

    MyBatis 本是 Apache 软件基金会 的一个开源项目 iBatis,2010 年这个项目由 Apache 软件基金会迁移到了 google code,并且改名为 MyBatis ,2013 年 11 月再次迁移到了 GitHub。

    170 引用 • 414 回帖 • 387 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...