Spring Boot Druid 关闭监控
一、步骤概览
下面的表格展示了关闭 Spring Boot Druid 监控的步骤概览:
| 步骤 | 操作 |
|---|---|
| 步骤一 | 添加 Maven 依赖 |
| 步骤二 | 配置 application.properties 文件 |
| 步骤三 | 编写配置类关闭监控 |
接下来我们将详细介绍每个步骤需要做什么,并提供相应的代码和注释。
二、步骤详解
步骤一:添加 Maven 依赖
首先,在项目的 pom.xml 文件中添加 Spring Boot Druid 和 MySQL 的依赖。
<dependencies>
<!-- Spring Boot Starter Web -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- Spring Boot Starter Data JPA -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<!-- Spring Boot Druid Starter -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.10</version>
</dependency>
<!-- MySQL Connector -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
</dependencies>
步骤二:配置 application.properties 文件
接下来,在 application.properties 文件中进行配置。配置项如下:
# 数据源配置
spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
# Druid 监控配置
spring.datasource.druid.stat-view-servlet.enabled=true
spring.datasource.druid.stat-view-servlet.url-pattern=/druid/*
spring.datasource.druid.stat-view-servlet.login-username=admin
spring.datasource.druid.stat-view-servlet.login-password=admin
spring.datasource.druid.stat-view-servlet.reset-enable=false
spring.datasource.druid.stat-view-servlet.allow=127.0.0.1
spring.datasource.druid.stat-view-servlet.deny=
spring.datasource.druid.stat-view-servlet.exclusions=*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/*
在上述配置中,我们将 Druid 的监控页面配置为 /druid/*,并设置了登录用户名和密码。
步骤三:编写配置类关闭监控
最后,我们需要编写一个配置类来关闭 Druid 的监控功能。代码如下:
import com.alibaba.druid.support.http.WebStatFilter;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class DruidConfig {
@Bean
@ConfigurationProperties(prefix = "spring.datasource.druid.stat-view-servlet")
public DruidStatProperties druidStatProperties() {
return new DruidStatProperties();
}
@Bean
public FilterRegistrationBean<WebStatFilter> druidWebStatFilter(DruidStatProperties properties) {
FilterRegistrationBean<WebStatFilter> registrationBean = new FilterRegistrationBean<>();
WebStatFilter webStatFilter = new WebStatFilter();
registrationBean.setFilter(webStatFilter);
registrationBean.addUrlPatterns(properties.getUrlPattern());
registrationBean.addInitParameter("exclusions", properties.getExclusions());
return registrationBean;
}
}
在上述代码中,我们通过 @ConfigurationProperties 注解读取配置文件中的 spring.datasource.druid.stat-view-servlet 配置项,并将其注入到 DruidStatProperties 对象中。然后,我们创建一个 FilterRegistrationBean 对象,将 WebStatFilter 过滤器设置为其过滤器,并添加对应的 URL 模式和排除模式。
三、序列图
下面是关闭 Spring Boot Druid 监控的序列图:
sequenceDiagram
participant 小白
participant 经验丰富的开发者
小白->经验丰富的开发者: 如何关闭 Spring Boot Druid 监控?
经验丰富的开发者->小白: 首先,你需要添加 Maven 依赖
经验丰富的开发者->小白: 然后,在 application.properties 文件中进行配置
















