Spring boot 2.1.0 RELEASE集成Druid

聲明

  1. 使用的Spring Boot版本爲2.1.0 RELEASE
  2. 使用的druid爲druid-spring-boot-starter版本爲1.1.9
  3. 這個集成是按照github上druid spring boot的示例來集成的

開始

添加依賴

parent-pom

<!-- spring boot 對druid的支持 -->
<dependency>
  <groupId>com.alibaba</groupId>
  <artifactId>druid-spring-boot-starter</artifactId>
  <version>${druid.version}</version>
</dependency>

target-pom

<!-- spring boot 對druid的支持 -->
<dependency>
  <groupId>com.alibaba</groupId>
  <artifactId>druid-spring-boot-starter</artifactId>
</dependency>

properties文件配置

application.properties

#JDBC Config
spring.datasource.url=...
spring.datasource.username=...
spring.datasource.password=...
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

#Druid Config
#啓用連接池
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
#連接池基礎屬性配置
spring.datasource.druid.initial-size=2
spring.datasource.druid.max-active=30
spring.datasource.druid.min-idle=2
spring.datasource.druid.max-wait=1234
spring.datasource.druid.pool-prepared-statements=true
spring.datasource.druid.max-pool-prepared-statement-per-connection-size=5
spring.datasource.druid.validation-query=select 1
spring.datasource.druid.validation-query-timeout=1
spring.datasource.druid.test-on-borrow=true
spring.datasource.druid.test-on-return=true
spring.datasource.druid.test-while-idle=true
spring.datasource.druid.time-between-eviction-runs-millis=10000
spring.datasource.druid.min-evictable-idle-time-millis=30001
spring.datasource.druid.async-close-connection-enable=true
#設置filter
#最後一個可以配置log4j或者slf4j,依賴了哪一個就寫哪一個
spring.datasource.druid.filters=config,stat,wall,slf4j
#開啓慢查詢
spring.datasource.druid.filter.stat.log-slow-sql=true
spring.datasource.druid.filter.stat.slow-sql-millis=2000

#druid spring監控 配置切面的包
spring.datasource.druid.aop-patterns=com.demo.service.*

寫Controller(這一步可要可不要)

/**
 * 該方法與Spring Boot集成Druid沒有關係,主要是爲Spring Boot獲取Druid JSON數據做的預留接口
 * @author William
 *
 */
@RestController
public class DruidStatController {
    @GetMapping("/durid/stat")
    public Object druidStat(){
        // DruidStatManagerFacade#getDataSourceStatDataList 該方法可以獲取所有數據源的監控數據,除此之外 DruidStatManagerFacade 還提供了一些其他方法,你可以按需選擇使用。
        return DruidStatManagerFacade.getInstance().getDataSourceStatDataList();
    }
}

啓動項目

運行Spring Boot 項目

訪問druid

http://127.0.0.1:8080/druid

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章