歡迎您光臨本站 註冊首頁

SpringBoot配置Druid數據監控代碼實例

←手機掃碼閱讀     zmcjlove @ 2020-06-11 , reply:0

druid,一個為監控而生的數據庫連接池,提供可視化界面來查看sql執行情況。

1、pom文件引入druid數據源
 

  com.alibabadruid1.1.8

 

2、新建一個DrruidConfig配置文件
 

  package com.example.mybatisplus.config;    import com.alibaba.druid.pool.DruidDataSource;  import com.alibaba.druid.support.http.StatViewServlet;  import com.alibaba.druid.support.http.WebStatFilter;  import org.springframework.boot.context.properties.ConfigurationProperties;  import org.springframework.boot.web.servlet.FilterRegistrationBean;  import org.springframework.boot.web.servlet.ServletRegistrationBean;  import org.springframework.context.annotation.Bean;  import org.springframework.context.annotation.Configuration;    import javax.sql.DataSource;  import java.util.Arrays;  import java.util.HashMap;  import java.util.Map;    /**   * druid數據池配置   */  @Configuration  public class DruidConfig {      @ConfigurationProperties(prefix = "spring.datasource")    @Bean    public DataSource druid(){      return new DruidDataSource();    }    //配置Druid的監控    //1、配置一個管理後臺的Servlet    @Bean    public ServletRegistrationBean statViewServlet(){      ServletRegistrationBean bean = new ServletRegistrationBean(new StatViewServlet(), "/druid/*");      MapinitParams = new HashMap<>();      //配置登錄的賬號密碼      initParams.put("loginUsername","admin");      initParams.put("loginPassword","123456");  //    initParams.put("deny","localhost"); //拒絕誰登錄      //是否能夠重置數據.  //    bean.addInitParameter("resetEnable","false");      bean.setInitParameters(initParams);      return bean;    }      //2、配置一個web監控的filter    @Bean    public FilterRegistrationBean webStatFilter(){      FilterRegistrationBean bean = new FilterRegistrationBean();      bean.setFilter(new WebStatFilter());      MapinitParams = new HashMap<>();      initParams.put("exclusions","*.html,*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*");      bean.setInitParameters(initParams);      bean.setUrlPatterns(Arrays.asList("/*"));      return bean;    }  }

 

3、yml文件配置

  spring:   datasource:    schema:     - classpath:schema.sql    initialization-mode: ALWAYS    username: root    password: root    url: jdbc:mysql://localhost:3306/jdbc?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=false    driver-class-name: com.mysql.cj.jdbc.Driver    #  type: com.alibaba.druid.pool.DruidDataSource    initialSize: 5    minIdle: 5    maxActive: 20    maxWait: 60000    timeBetweenEvictionRunsMillis: 60000    minEvictableIdleTimeMillis: 300000    validationQuery: SELECT 1 FROM DUAL    testWhileIdle: true    testOnBorrow: false    testOnReturn: false    poolPreparedStatements: true    #  配置監控統計攔截的filters,去掉後監控界面sql無法統計,'wall'用於防火牆    filters: stat,wall    maxPoolPreparedStatementPerConnectionSize: 20    useGlobalDataSourceStat: true    connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500

 

                                                       

   


[zmcjlove ] SpringBoot配置Druid數據監控代碼實例已經有241次圍觀

http://coctec.com/docs/java/show-post-238064.html