欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 名人名企 > 使用Druid连接池优化Spring Boot应用中的数据库连接

使用Druid连接池优化Spring Boot应用中的数据库连接

2025/2/25 15:23:21 来源:https://blog.csdn.net/weixin_46146718/article/details/145710957  浏览:    关键词:使用Druid连接池优化Spring Boot应用中的数据库连接

使用Druid连接池优化Spring Boot应用中的数据库连接

  • 使用Druid连接池优化Spring Boot应用中的数据库连接
    • 1. 什么是Druid连接池?
    • 2. 在Spring Boot中配置Druid连接池
      • 2.1 添加依赖
      • 2.2 配置Druid连接池
      • 2.3 配置参数详解
    • 3. 启用Druid监控
    • 4. 总结


使用Druid连接池优化Spring Boot应用中的数据库连接

在现代的Java应用中,数据库连接管理是一个非常重要的环节。合理地配置数据库连接池可以显著提升应用的性能和稳定性。本文将介绍如何在Spring Boot应用中使用阿里巴巴的Druid连接池来优化数据库连接管理。

1. 什么是Druid连接池?

Druid是阿里巴巴开源的一个高性能的数据库连接池。它不仅提供了连接池的基本功能,还具备监控、SQL防注入、性能统计等高级功能。Druid连接池在性能和功能上都优于传统的连接池(如HikariCP、Tomcat JDBC等),因此在生产环境中被广泛使用。

2. 在Spring Boot中配置Druid连接池

2.1 添加依赖

首先,在pom.xml中添加Druid的依赖:

        <dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><scope>runtime</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.2.8</version> <!-- 或者使用最新版本 --></dependency>

2.2 配置Druid连接池

接下来,在application.yml中配置Druid连接池的相关参数。以下是一个完整的配置示例:

server:port: 8888# 数据库配置
spring:datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://127.0.0.1:3306/test?useSSL=false&serverTimezone=UTCusername: rootpassword: juyi123type: com.alibaba.druid.pool.DruidDataSourcedruid:initial-size: 5  # 初始化连接池大小min-idle: 5  # 最小空闲连接数max-active: 20  # 最大连接数max-wait: 60000  # 最大等待时间(单位毫秒)time-between-eviction-runs-millis: 60000  # 空闲连接回收时间min-evictable-idle-time-millis: 300000  # 连接最大空闲时间validation-query: SELECT 1  # 验证连接是否有效的SQLtest-while-idle: true  # 空闲时检查连接有效性test-on-borrow: true  # 从连接池获取连接时验证连接有效性test-on-return: false  # 归还连接时不验证pool-prepared-statements: true  # 启用PreparedStatement缓存max-pool-prepared-statement-per-connection-size: 20  # 每个连接的PreparedStatement缓存大小web-stat-filter:enabled: true  # 开启 Druid 监控url-pattern: /druid/*  # 监控的 URLstat-view-servlet:enabled: true  # 启用监控页面url-pattern: /druid/*  # 监控页面的 URLlogin-username: admin  # 设置用户名login-password: admin  # 设置密码

2.3 配置参数详解

  • initial-size: 连接池初始化时创建的连接数。
  • min-idle: 连接池中保持的最小空闲连接数。
  • max-active: 连接池中允许的最大连接数。
  • max-wait: 当连接池中没有可用连接时,请求连接的最大等待时间(单位毫秒)。
  • time-between-eviction-runs-millis: 连接池中空闲连接回收的时间间隔。
  • min-evictable-idle-time-millis: 连接在池中保持空闲而不被回收的最小时间。
  • validation-query: 用于验证连接是否有效的SQL语句。
  • test-while-idle: 是否在空闲时检查连接的有效性。
  • test-on-borrow: 是否在从连接池获取连接时验证连接的有效性。
  • test-on-return: 是否在归还连接时验证连接的有效性。
  • pool-prepared-statements: 是否启用PreparedStatement缓存。
  • max-pool-prepared-statement-per-connection-size: 每个连接的PreparedStatement缓存大小。
  • web-stat-filter: 配置Druid的监控过滤器。
  • stat-view-servlet: 配置Druid的监控页面。

3. 启用Druid监控

Druid提供了强大的监控功能,可以帮助开发者实时查看数据库连接池的状态、SQL执行情况等。通过上述配置,我们已经启用了Druid的监控功能。

访问http://localhost:8888/druid,输入配置的用户名和密码(如admin/admin),即可进入Druid的监控页面。

4. 总结

通过本文的介绍,我们了解了如何在Spring Boot应用中配置和使用Druid连接池。Druid不仅提供了高性能的连接池管理,还具备丰富的监控功能,非常适合在生产环境中使用。合理地配置Druid连接池参数,可以显著提升应用的数据库访问性能和稳定性。

希望本文对你有所帮助,欢迎在评论区留言讨论!

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词