SpringBoot配置Druid数据监控代码实例
作者:浮生若梦~
这篇文章主要介绍了SpringBoot配置Druid数据监控代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
druid,一个为监控而生的数据库连接池,提供可视化界面来查看sql执行情况。
1、pom文件引入druid数据源
<!--druid数据源--> <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数据池配置 */ @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/*"); Map<String,String> initParams = 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()); 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 # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙 filters: stat,wall maxPoolPreparedStatementPerConnectionSize: 20 useGlobalDataSourceStat: true connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
- SpringBoot集成阿里巴巴Druid监控的示例代码
- 使用SpringBoot简单了解Druid的监控系统的配置方法
- SpringBoot集成Druid监控页面最小化配置操作
- SpringBoot对Druid配置SQL监控功能失效问题及解决方法
- springboot项目中实现访问druid内置监控页面
- SpringBoot集成Druid连接池进行SQL监控的问题解析
- SpringBoot整合Druid实现数据库连接池和监控
- SpringBoot3整合Druid监控功能的项目实践
- SpringBoot集成Druid实现监控功能的示例代码
- springboot关闭druid监控 druid2改配置文件无效的解决
- Springboot整合Druid实现对访问的监控方式
- SpringBoot+Druid开启监控页面的实现示例