天天看点

Spring Boot 配置Druid连接池

 1.引入依赖

<dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.1.18</version>
        </dependency>
           

2.application.properties 配置

#换成 druid
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource

# druid 下面为连接池的补充设置,应用到上面所有数据源中
# druid 初始化连接数大小,最小,最大
spring.datasource.druid.initial-size=8
spring.datasource.druid.min-idle=8
spring.datasource.druid.max-active=30
# druid 配置获取连接等待超时的时间
spring.datasource.druid.max-wait=30000
# druid 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
spring.datasource.druid.time-between-eviction-runs-millis=60000

# 配置一个连接在池中最小生存的时间,单位是毫秒
spring.datasource.druid.min-evictable-idle-time-millis=300000
# druid 验证数据库连接的有效性
spring.datasource.druid.validation-query=select '1' from dual
spring.datasource.druid.test-while-idle=true
spring.datasource.druid.test-on-borrow=false
spring.datasource.druid.test-on-return=false
# druid 打开PSCache,并且指定每个连接上PSCache的大小
spring.datasource.druid.pool-prepared-statements=true
spring.datasource.druid.max-open-prepared-statements=20
spring.datasource.druid.max-pool-prepared-statement-per-connection-size=20
# druid 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
spring.datasource.druid.filters=stat,wall,slf4j

# druid 状态监控
spring.datasource.druid.filter.stat.enabled=true
spring.datasource.druid.filter.stat.db-type=postgresql
spring.datasource.druid.filter.stat.log-slow-sql=true
spring.datasource.druid.filter.stat.slow-sql-millis=2000
# druid 监控过滤器
spring.datasource.druid.web-stat-filter.enabled=true
spring.datasource.druid.web-stat-filter.exclusions="*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*"
# druid 监控页面
spring.datasource.druid.stat-view-servlet.enabled=true
spring.datasource.druid.stat-view-servlet.url-pattern=/druid/*
           

3.访问druid控制台 

http://localhost:8080/druid

如果配置后依然使用的是spring boot默认的 hikari 连接池,请参考springboot配置Druid连接池不起作用问题

继续阅读