当前位置: 代码网 > it编程>编程语言>Java > SpringBoot整合Druid并列出参数清单的代码步骤

SpringBoot整合Druid并列出参数清单的代码步骤

2026年07月30日 Java 我要评论
1. 整合步骤(基于 spring boot 官方 starter)第一步:引入 maven 依赖<dependency> <groupid>com.alibaba<

1. 整合步骤(基于 spring boot 官方 starter)

第一步:引入 maven 依赖

<dependency>
    <groupid>com.alibaba</groupid>
    <artifactid>druid-spring-boot-starter</artifactid>
    <version>1.2.20</version> <!-- 建议使用最新稳定版 -->
</dependency>

第二步:在application.yml中配置数据源和连接池参数

spring:
  datasource:
    # 基本连接信息(必须)
    url: jdbc:mysql://localhost:3306/test?usessl=false&servertimezone=asia/shanghai
    username: root
    password: 123456
    driver-class-name: com.mysql.cj.jdbc.driver
    # 指定使用 druid 数据源(必须)
    type: com.alibaba.druid.pool.druiddatasource
    # druid 连接池专属参数(核心清单见下文)
    druid:
      # 初始连接数
      initial-size: 5
      # 最小空闲连接数
      min-idle: 5
      # 最大活跃连接数
      max-active: 20
      # 获取连接超时时间(毫秒)
      max-wait: 60000
      # 连接保持空闲而不被回收的最小时间(毫秒)
      time-between-eviction-runs-millis: 60000
      # 连接在池中最小生存时间(毫秒)
      min-evictable-idle-time-millis: 300000
      # 验证连接是否有效的 sql(mysql 使用)
      validation-query: select 1 from dual
      # 验证超时时间(秒)
      validation-query-timeout: 3
      # 申请连接时执行 validation-query 检测
      test-on-borrow: false
      # 归还连接时执行 validation-query 检测
      test-on-return: false
      # 空闲时检测连接有效性(建议开启)
      test-while-idle: true
      # 监控统计 + 日志 + 防御 sql 注入(配置三个插件)
      filters: stat,log4j2,wall
      # statfilter 监控配置
      stat:
        log-slow-sql: true
        slow-sql-millis: 2000
        merge-sql: true
      # wallfilter(sql 防火墙)配置
      wall:
        config:
          delete-where-none-check: true
      # 监控页面(druid console)访问配置
      stat-view-servlet:
        enabled: true
        url-pattern: /druid/*
        login-username: admin
        login-password: admin123
        reset-enable: false
      # web 应用监控(uri 统计)
      web-stat-filter:
        enabled: true
        url-pattern: /*
        exclusions: '*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*'

2. druid 连接池完整核心参数清单

参数名说明默认值推荐值(示例)
initial-size初始化时创建的连接数05~10
min-idle最小空闲连接数05~10
max-active最大活跃连接数(最大并发数)820~100(视业务)
max-wait获取连接最大等待时间(毫秒),超时抛异常-1(无限)60000
time-between-eviction-runs-millis空闲连接检查/回收的间隔(毫秒)60000(1分钟)60000
min-evictable-idle-time-millis连接最小空闲时间,超过则被回收(毫秒)1800000(30分钟)300000(5分钟)
max-evictable-idle-time-millis连接最大空闲时间,强制回收(毫秒)25200000(7小时)-
validation-query验证连接有效性的 sql(必须支持快速执行)nullmysql: select 1 / oracle: select 1 from dual
validation-query-timeout验证 sql 执行超时时间(秒)-13
test-on-borrow获取连接时立即执行验证(影响性能)falsefalse
test-on-return归还连接时执行验证(影响性能)falsefalse
test-while-idle空闲时检测连接有效性(强烈建议开启falsetrue
pool-prepared-statements是否缓存 preparedstatement(pscache)falsetrue(开启可提升性能)
max-pool-prepared-statement-per-connection-size每个连接缓存的 preparedstatement 上限-120
filters扩展插件(用逗号分隔):stat(监控), wall(防火墙), log4j2(日志)-stat,wall,log4j2
connection-properties自定义连接属性,如 config.decrypt=true(密码解密)--
use-global-data-source-stat是否开启全局数据源统计false-

3. 监控页面(druid console)访问

启动项目后,访问:

http://localhost:你的端口/druid/login.html

使用配置中的 login-username / login-password 登录,可查看 sql 执行、连接池状态、uri 监控等。

4. 常见问题(避坑点)

  1. filters 配置的插件必须存在类路径(如 log4j2 需引入 spring-boot-starter-log4j2)。
  2. 如果使用 spring.datasource.druid 前缀,不要同时配置 spring.datasource 下的 hikari 参数,二者会冲突
  3. 生产环境建议开启 test-while-idle + validation-query,保证连接有效性,但不要开启 test-on-borrow 以免影响响应时间。

以上就是springboot整合druid并列出参数清单的代码步骤的详细内容,更多关于springboot整合druid列出参数清单的资料请关注代码网其它相关文章!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2026  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com