【已解决】SpringBoot3项目整合Druid依赖:Druid监控页面404报错

文章标题


问题描述

最近,笔者在SpringBoot3项目中整合Druid连接池时,偶然翻到一条介绍Druid监控的短视频,兴致盎然之下尝试设置了一下Druid监控。

But,按照视频中提供的yml参数对照设置,项目启动后在浏览器输入"http://localhost:8080/druid/index.html ",浏览器报错,提示404

Druid相关配置参数如下:

yml 复制代码
druid:
      # 连接池配置参数
      initial-size: 5   # 连接池启动时的初始连接数
      min-idle: 5       # 连接池中的最小空闲连接数
      max-active: 20    # 连接池中的最大活跃连接数
      max-wait: 60000   # 等待连接池分配连接的最大时长,单位为毫秒
      time-between-eviction-runs-millis: 60000    # 连接池中连接的空闲检测周期,单位为毫秒
      min-evictable-idle-time-millis: 300000     # 连接在池中最小的存活时间,单位为毫秒
      filters: stat,wall,slf4j
      web-stat-filter:
        exclusions: "*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/*"
      stat-view-servlet:
        # 是否启用druid监控
        enabled: true
        # 监控页面的url
        url-pattern: /druid/*
        # 登录监控页面的账号密码,默认为root
        login-username: admin
        login-password: admin
        # 允许访问监控页面的ip白名单
        allow: 127.0.0.1
        deny:

原因分析

一般来说,企业级的项目多是springBoot 2.x 版本,它们所引入的Druid依赖版本一般是druid-spring-boot-starter,示例代码如下:

java 复制代码
 		<dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.2.19</version>
        </dependency>

而笔者的项目SpringBoot版本为v3.3.3,所引入的Druid依赖正是上述版本

在检查URL,端口号,路径名均正确之后,猛然想到可能是 SpringBoot版本与Druid版本不一致所致,之前在SpringBoot3项目中整合MyBatis-Plus时就报了错。

百度了一下,发现 SpringBoot3项目必须引入版本为druid-spring-boot-3-starter的Druid依赖,Druid的监控界面才能正常打开。

示例代码如下:

java 复制代码
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-3-starter</artifactId>
            <version>1.2.23</version>
        </dependency>

解决方案

前提:确认yml文件或properties文件中Druid的配置参数设置正确

确认无误后 ,根据上述原因分析,检查项目SpringBoot版本与Druid依赖的版本是否兼容,若不兼容,修改相应pom文件中Druid的依赖版本,重启项目生效即可

在浏览器上重新刷新访问Druid的监控页面


至此,Druid 监控页面404报错解决成功!!!


参考资料

相关推荐
xcLeigh1 天前
飞算 JavaAI 进阶实战:从代码生成到系统架构优化的全流程指南
java·系统架构·代码生成·java开发·飞算javaai炫技赛·javaai·飞算
希望永不加班1 天前
SpringBoot 事件机制:ApplicationEvent 与监听器
java·开发语言·spring boot·后端·spring
Nyarlathotep01131 天前
自动内存管理(2):垃圾收集器与内存分配策略
java·jvm·后端
却话巴山夜雨时i1 天前
互联网大厂Java面试实录:技术栈解析与场景剖析
java·大数据·spring boot·spring cloud·微服务·ai·面试
好家伙VCC1 天前
# 发散创新:基于事件驱动架构的实时日志监控系统设计与实现在现代分布式系统中,**事件驱动编程模型**正
java·python·架构
SuniaWang1 天前
Java 17实战:Record与密封类的黄金搭档
java·开发语言·python
小江的记录本1 天前
【Transformer架构】Transformer架构核心知识体系(包括自注意力机制、多头注意力、Encoder-Decoder结构)
java·人工智能·后端·python·深度学习·架构·transformer
小松加哲1 天前
深入剖析Tomcat原理
java·tomcat
三原1 天前
附源码:三原管理系统新增俩种常用布局
java·前端·vue.js
gelald1 天前
SpringBoot - 配置加载
spring boot·后端·spring