druid访问监控首页index.html页面404 whitelabel error page This application has no explicit mapping for /error

本文解决Druid 1.1.10以上版本访问监控页面出现的404问题,需手动配置开启stat-view-servlet。

问题:

配置druid 访问地址 http://localhost:8887/druid/index.html

报错:This application has no explicit mapping for /error, so you are seeing this as a fallback

druid版本:

        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.1.21</version>
        </dependency>

将druid版本降低为 1.1.10 启动项目访问http://localhost:8887/druid/index.html 可以正常访问

 再次将druid版本升级为  1.1.13 访问报错 404

问题分析

druid版本1.1.10以上版本配置改变。

查询资料发现,1.1.10版本以上需要配置开启 stat-view-servlet ,不配置情况下为默认不开启 监控页面,其他一些配置 如sql监控也是默认不开启的,若是要开启某个功能要手动开启,配置参考

https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter

总结

若是要默认开启druid的配置,选择1.1.10及以下的版本,若是要选择手动开启某些配置,可以选择1.1.10以上的版本。

在应用程序中出现 `There was an unexpected error (type=Not Found, status=404)` 通常表示请求的资源未被正确映射或处理。以下是常见的原因及解决方案: ### 1. 控制器映射问题 如果使用了`@Service`注解作为控制器,会导致Spring Boot无法正确识别该类为控制器,从而导致404错误。解决方法是将`@Service`替换为`@Controller`注解,确保Spring Boot能够正确地处理HTTP请求[^2]。 ```java // 错误示例 @Service public class MyController { ... } // 正确示例 @Controller public class MyController { ... } ``` ### 2. 包扫描配置问题 如果项目中的组件、服务或其他Bean没有被正确扫描到,也可能导致404错误。可以通过在主应用类上添加`@ComponentScan`来指定需要扫描的包路径,以确保所有相关的类都被加载[^3]。 ```java @SpringBootApplication @ComponentScan("com.example.demo") @MapperScan("com.example.demo.mapper") public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } } ``` ### 3. 静态资源访问问题 当尝试访问静态资源时遇到404错误,可能是由于Spring Boot默认的静态资源位置未包含所需文件,或者存在路径冲突。确保静态资源放置在正确的目录下(如`src/main/resources/static`),并且URL路径与实际文件路径一致[^3]。 例如,若要通过`http://localhost/test/user/list`访问某个页面,则应检查是否存在对应的控制器方法以及视图名称是否匹配。 ### 4. Druid监控页面配置问题 如果使用了Druid进行数据库监控,并且在访问监控页面时遇到了404错误,可能是因为`stat-view-servlet`未启用。可以在`application.yml`中配置`enabled: true`来启用它[^4]。 ```yaml spring: datasource: druid: stat-view-servlet: url-pattern: /druid/* enabled: true login-username: admin login-password: admin ``` 此外,还可以根据需要设置IP白名单和黑名单等安全策略。 ### 5. JSP支持问题 对于使用JSP模板引擎的应用程序,如果没有正确配置Tomcat嵌入式服务器的支持库,也会导致404错误。确保Maven依赖中包含了`tomcat-embed-jasper`库[^5]。 ```xml <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> <scope>provided</scope> </dependency> ``` 同时,确认JSP文件位于`WEB-INF`目录下,并且路径与控制器返回的视图名称相匹配。 ### 总结 404错误的原因多种多样,但大多数情况下都与请求的资源未找到有关。从控制器映射、包扫描配置、静态资源管理到特定框架(如Druid)的配置,都需要仔细检查。根据具体情况进行相应的调整,可以有效解决这类问题。
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值