Springboot+druid监控页面404

添加maven依赖

        // 网上很多都推荐导入这个依赖,但是使用这个包之后,无法在监控页面
        //(http://localhost:7783/card/druid/sql.html)查看sql监控
        
            com.alibaba
            druid
            1.1.10
        
        // 应该使用这个依赖
        
            com.alibaba
            druid-spring-boot-starter
            1.1.17
        

引入依赖后在application.properties中配置参数:
这个是网上别的大神博客中的配置,配置文件是yml

spring:
  application:
    name: dev-manager
  datasource:
    # 配置数据源类型
    type:
      com.alibaba.druid.pool.DruidDataSource
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/dev_manage?useUnicode=true&characterEncoding=UTF-8
    username: root
    password: abc12345
    # 初始化,最小,最大连接数
    initialSize: 3
    minidle: 3
    maxActive: 18
    # 获取数据库连接等待的超时时间
    maxWait: 60000
    # 配置多久进行一次检测,检测需要关闭的空闲连接 单位毫秒
    timeBetweenEvictionRunsMillis: 60000
    validationQuery: SELECT 1 FROM dual
    # 配置监控统计拦截的filters,去掉后,监控界面的sql无法统计
    filters: stat,wall,log4j

但是,实际在使用他们的配置之后,发现配置没有生效
一番研究之后发现,这样的写法才生效了,具体什么原因,欢迎研究出来的同学,和我分享一下

spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.druid.initial-size=3
spring.datasource.druid.minidle=3
spring.datasource.druid.max-active=18
# 获取数据库连接等待的超时时间
spring.datasource.druid.maxWait=60000
# 配置多久进行一次检测,检测需要关闭的空闲连接 单位毫秒
spring.datasource.druid.timeBetweenEvictionRunsMillis=60000
spring.datasource.druid.validationQuery=SELECT 1 FROM dual
# 配置监控统计拦截的filters,去掉后,监控界面的sql无法统计
spring.datasource.druid.filters= stat,wall,log4j

配置监控统计功能:

//这样的方式不需要在启动类头上添加注解:@ServletComponentScan
@Configuration
public class DruidConfiguration {
 
    /**
     * 注册一个StatViewServlet
     * @return
     */
    @Bean
    public ServletRegistrationBean DruidStatViewServle(){
 
       //org.springframework.boot.context.embedded.ServletRegistrationBean提供类的进行注册.
       ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(new StatViewServlet(),"/druid/*");
 
       //添加初始化参数:initParams
 
       //白名单:
       servletRegistrationBean.addInitParameter("allow","127.0.0.1");
 
       //IP黑名单 (存在共同时,deny优先于allow) : 如果满足deny的话提示:Sorry, you are not permitted to view this page.
       servletRegistrationBean.addInitParameter("deny","192.168.0.114");
 
       //登录查看信息的账号密码.
       servletRegistrationBean.addInitParameter("loginUsername","admin");
       servletRegistrationBean.addInitParameter("loginPassword","123456");
 
       //是否能够重置数据.
       servletRegistrationBean.addInitParameter("resetEnable","false");
       return servletRegistrationBean;
    }
 
    /**
     * 注册一个:filterRegistrationBean
     * @return
     */
    @Bean
    public FilterRegistrationBean druidStatFilter(){
       FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean(new WebStatFilter());
 
       //添加过滤规则.
       filterRegistrationBean.addUrlPatterns("/*");
 
       //添加不需要忽略的格式信息.
       filterRegistrationBean.addInitParameter("exclusions","*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*");
 
       return filterRegistrationBean;
    }
}

@WebFilter(filterName="druidWebStatFilter",urlPatterns="/*",

        initParams={

                @WebInitParam(name="exclusions",value="*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/*")// 忽略资源

        }
)

public class DruidStatFilter extends WebStatFilter {
}

经过以上配置之后,大家就可以访问http://localhost:服务端口/druid/login.html,查看监控页面了

但是还是有部分同学,还是提示404,这个时候查看一下自己的项目,是否配置了项目路径

//例如
server.servlet.context-path=/nimbleBus

如果配置了项目路径,访问http://localhost:服务端口/nimbleBus/druid/login.html即可
PS:我就是在这里爬了好久的坑,捂脸つ﹏⊂

最后附上在此过程中借鉴的各位大神的资料:
https://blog.csdn.net/u014209205/article/details/80625963
https://412887952-qq-com.iteye.com/blog/2292362
https://www.cnblogs.com/6324/p/6826231.html
https://blog.csdn.net/sjm01234/article/details/79009545
https://blog.csdn.net/qq_37758497/article/details/86503559

如果我的文章有帮助到你的话,麻烦点个喜欢哦,感谢

你可能感兴趣的:(Springboot+druid监控页面404)