springboot 集成druid

1、druid简介

Druid首先是一个数据库连接池。Druid是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JBoss DataSource。
Druid充当数据库连接池,可以监控数据库访问性能,可以获得SQL执行日志

 

2、配置

  加入druid相关配置(.yml配置文件)

spring:
  #数据库配置
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/springboot?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf-8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&useSSL=false
    username: root
    password: root
    druid:
        # 初始连接数
        initial-size: 10
        # 最大连接池数量
        max-active: 100
        # 最小连接池数量
        min-idle: 10
        # 配置获取连接等待超时的时间
        max-wait: 60000
        # 打开PSCache,并且指定每个连接上PSCache的大小
        pool-prepared-statements: true
        max-pool-prepared-statement-per-connection-size: 20
        # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
        timeBetweenEvictionRunsMillis: 60000
        # 配置一个连接在池中最小生存的时间,单位是毫秒
        min-evictable-idle-time-millis: 300000
        validation-query: SELECT 1 FROM DUAL
        test-while-idle: true
        test-on-borrow: false
        test-on-return: false
        stat-view-servlet:
            enabled: true
            url-pattern: /druid/*
        filter:
            stat:
                log-slow-sql: true
                slow-sql-millis: 1000
                merge-sql: false
            wall:
                config:
                    multi-statement-allow: true

   

  引入druid依赖

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

 项目启动后可通过show processlist查看mysql的全部线程是否和配置的initial-size一致。

3、druid监控测试

访问ip:port/druid验证即可,url中的/druid要和配置文件中的url-pattern一致

stat-view-servlet:
    enabled: true
    url-pattern: /druid/*

 

效果如下:

 

具体源码参照:【Springboot集成Druid

 

posted @ 2019-02-16 16:36  花拾夕  阅读(1463)  评论(0编辑  收藏  举报