SpringBoot配置Druid數(shù)據(jù)監(jiān)控代碼實例
更新時間:2020年06月08日 16:04:01 作者:浮生若夢~
這篇文章主要介紹了SpringBoot配置Druid數(shù)據(jù)監(jiān)控代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
druid,一個為監(jiān)控而生的數(shù)據(jù)庫連接池,提供可視化界面來查看sql執(zhí)行情況。
1、pom文件引入druid數(shù)據(jù)源
<!--druid數(shù)據(jù)源--> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.8</version> </dependency>
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數(shù)據(jù)池配置
*/
@Configuration
public class DruidConfig {
@ConfigurationProperties(prefix = "spring.datasource")
@Bean
public DataSource druid(){
return new DruidDataSource();
}
//配置Druid的監(jiān)控
//1、配置一個管理后臺的Servlet
@Bean
public ServletRegistrationBean statViewServlet(){
ServletRegistrationBean bean = new ServletRegistrationBean(new StatViewServlet(), "/druid/*");
Map<String,String> initParams = new HashMap<>();
//配置登錄的賬號密碼
initParams.put("loginUsername","admin");
initParams.put("loginPassword","123456");
// initParams.put("deny","localhost"); //拒絕誰登錄
//是否能夠重置數(shù)據(jù).
// bean.addInitParameter("resetEnable","false");
bean.setInitParameters(initParams);
return bean;
}
//2、配置一個web監(jiān)控的filter
@Bean
public FilterRegistrationBean webStatFilter(){
FilterRegistrationBean bean = new FilterRegistrationBean();
bean.setFilter(new WebStatFilter());
Map<String,String> initParams = 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 # 配置監(jiān)控統(tǒng)計攔截的filters,去掉后監(jiān)控界面sql無法統(tǒng)計,'wall'用于防火墻 filters: stat,wall maxPoolPreparedStatementPerConnectionSize: 20 useGlobalDataSourceStat: true connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- SpringBoot集成阿里巴巴Druid監(jiān)控的示例代碼
- 使用SpringBoot簡單了解Druid的監(jiān)控系統(tǒng)的配置方法
- SpringBoot集成Druid監(jiān)控頁面最小化配置操作
- SpringBoot對Druid配置SQL監(jiān)控功能失效問題及解決方法
- springboot項目中實現(xiàn)訪問druid內(nèi)置監(jiān)控頁面
- SpringBoot集成Druid連接池進行SQL監(jiān)控的問題解析
- SpringBoot整合Druid實現(xiàn)數(shù)據(jù)庫連接池和監(jiān)控
- SpringBoot3整合Druid監(jiān)控功能的項目實踐
- SpringBoot集成Druid實現(xiàn)監(jiān)控功能的示例代碼
- springboot關(guān)閉druid監(jiān)控 druid2改配置文件無效的解決
- Springboot整合Druid實現(xiàn)對訪問的監(jiān)控方式
- SpringBoot+Druid開啟監(jiān)控頁面的實現(xiàn)示例
相關(guān)文章
SpringMVC @RequestBody出現(xiàn)400 Bad Request的解決
這篇文章主要介紹了SpringMVC @RequestBody出現(xiàn)400 Bad Request的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-04-04
解決idea update project 更新選項消失的問題
這篇文章主要介紹了解決idea update project 更新選項消失的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01
java中treemap和treeset實現(xiàn)紅黑樹
這篇文章主要為大家詳細介紹了java中treemap和treeset實現(xiàn)紅黑樹,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-11-11
Java實現(xiàn)批量導出導入數(shù)據(jù)及附件文件zip包
這篇文章主要為大家詳細介紹了Java實現(xiàn)批量導出導入數(shù)據(jù)及附件文件zip包的方法,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一2022-09-09

