第一步 引入依赖
<!-- 引入 druid 数据源-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.23</version>
</dependency>
首先开启 druid 的配置文件
package com.spring.bootinit.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.sql.SQLException;
import java.util.Arrays;
/**
* @User: Json
* @Date: 2022/9/6
**/
@Configuration
public class DruidConfig {
// 自己设置一个 数据源
// 当容器中 没有 自定义数据源 会导入 HikariPool 数据源
@ConfigurationProperties("spring.datasource")
// 写上这个注解 表示 这个 Druid 数据源的 配置参数 从配置文件中里面 spring.datasource 获取
@Bean
public DataSource dataSource() throws SQLException {
DruidDataSource druidDataSource = new DruidDataSource();
// 数据源配置信息 配置在这也不合适 一般会写在 配置文件中
// druidDataSource.setUsername();
// druidDataSource.setPassword();
// 等等
druidDataSource.setFilters("stat,wall"); // stat 开启sql监控功能 // wall 开启sql防火墙
//像这种 写法 都可以写在配置文件中
return druidDataSource;
}
/**
* 配置 Druid 的监控页
* */
@Bean
public ServletRegistrationBean servletRegistrationBean(){
StatViewServlet statViewServlet = new StatViewServlet();
ServletRegistrationBean<StatViewServlet> statViewServletServletRegistrationBean = new ServletRegistrationBean<>(statViewServlet, "/druid/*");
statViewServletServletRegistrationBean.addInitParameter("loginUsername","admin"); //给监控页设置 登录密码
statViewServletServletRegistrationBean.addInitParameter("loginPassword","123456");
return statViewServletServletRegistrationBean;
}
/**
* WebStatFilter 用于采集 web -jdbc 关联监控的数据
*
* **/
@Bean
public FilterRegistrationBean webStatFilter(){
WebStatFilter webStatFilter = new WebStatFilter();
FilterRegistrationBean<WebStatFilter> webStatFilterFilterRegistrationBean =
new FilterRegistrationBean<WebStatFilter>(webStatFilter);
//采集哪个路径
webStatFilterFilterRegistrationBean.setUrlPatterns(Arrays.asList("/*"));
//排除那些路径 不采集
//exclusions 你要排除 路径的 关键字
webStatFilterFilterRegistrationBean.addInitParameter("exclusions","*.js,/druid/*");
return webStatFilterFilterRegistrationBean;
}
}
然后访问 自己的 的域名
http://127.0.0.1:8080/druid/
测试结果