SpringBoot3与Druid集成踩坑:配置不生效与404解决方案
需积分: 5 157 浏览量
更新于2024-08-03
收藏 571KB PDF 举报
"本文主要探讨了在SpringBoot3中使用Druid数据源时遇到的问题,包括启动报错、配置不生效以及404错误。在SpringBoot3与Druid的集成过程中,由于版本兼容性问题,导致了启动失败。文章详细分析了问题的原因,并提供了解决方案。"
### 前言
在升级到SpringBoot3后,一些开发者遇到了Druid数据源无法正常工作的问题。原本在SpringBoot2中使用的Druid配置在新版本下失效,尝试访问Druid监控页面时,浏览器返回404错误。本文旨在帮助遇到此类问题的开发者找到解决之道。
### Druid介绍
Druid是一个由阿里巴巴开发的高性能数据库连接池,设计目标是提供强大的监控和扩展能力。它不仅在功能和性能上超越了许多其他的数据库连接池,如DBCP、C3P0、BoneCP等,而且在阿里巴巴内部广泛应用,被超过600个项目所采纳。
### 问题背景
当尝试在SpringBoot3中集成Druid时,由于SpringBoot3默认使用了基于jakarta.servlet的API,而Druid的旧版本依赖于javax.servlet,这导致了启动失败的问题。
### DruidGitHub地址
Druid的GitHub仓库位于:https://github.com/alibaba/druid,有兴趣的开发者可以通过此链接查看项目的源代码和最新的更新。
### 原因
SpringBoot3对Servlet API进行了升级,从javax.servlet迁移到了jakarta.servlet,而Druid的某些部分仍然依赖于旧的javax.servlet包。此外,SpringBoot3的最低版本要求是JDK17,这可能与Druid对JDK版本的兼容性有关。
### 引入依赖
在SpringBoot2中,Druid的依赖如下:
```xml
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.18</version>
</dependency>
```
然而,在SpringBoot3中,需要寻找与jakarta.servlet兼容的Druid版本,或者考虑使用适配器来解决依赖问题。
### 解决方法
为了解决Druid配置不生效的问题,开发者需要确保使用的是与SpringBoot3兼容的Druid版本,或者对现有配置进行相应的调整,使其能够识别SpringBoot3的新API。同时,需要检查pom.xml文件中的依赖是否正确引入。
### 404错误
当访问`http://localhost:8080/druid`出现404错误时,可能是由于Druid的StatViewServlet未正确配置。需要确保在SpringBoot的配置文件(application.properties或application.yml)中添加Druid的监控配置,例如:
```properties
# application.properties 示例
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
druid.stat-view-servlet.enabled=true
druid.stat-view-servlet.login-username=admin
druid.stat-view-servlet.login-password=admin
```
确保Druid的Servlet和Filter已经被SpringBoot自动配置并注册到Web应用中。
### 完整配置
完整的SpringBoot3与Druid的集成配置包括但不限于以下内容:
1. 添加Druid依赖,确保版本与SpringBoot3兼容。
2. 配置数据源属性,如URL、用户名、密码等。
3. 启用StatViewServlet,配置访问控制(用户名和密码)。
4. 可选:配置Druid的过滤器,如wall-filter(防止SQL注入)和stat-filter(监控SQL执行统计)。
通过以上步骤,应该能成功在SpringBoot3中使用Druid数据源,并启用监控页面。如果问题依然存在,可能需要查阅Druid官方文档或社区资源,寻求进一步的帮助。
2018-04-25 上传
128 浏览量
点击了解资源详情
2023-05-19 上传
2023-08-15 上传
2023-04-27 上传
2023-10-16 上传
2023-04-07 上传
2024-03-31 上传
![](https://profile-avatar.csdnimg.cn/75817f782b9b4c5bad345cdaccf20791_xiaohuihui1400.jpg!1)
一碗情深
- 粉丝: 6929
- 资源: 4
最新资源
- 构建Cadence PSpice仿真模型库教程
- VMware 10.0安装指南:步骤详解与网络、文件共享解决方案
- 中国互联网20周年必读:影响行业的100本经典书籍
- SQL Server 2000 Analysis Services的经典MDX查询示例
- VC6.0 MFC操作Excel教程:亲测Win7下的应用与保存技巧
- 使用Python NetworkX处理网络图
- 科技驱动:计算机控制技术的革新与应用
- MF-1型机器人硬件与robobasic编程详解
- ADC性能指标解析:超越位数、SNR和谐波
- 通用示波器改造为逻辑分析仪:0-1字符显示与电路设计
- C++实现TCP控制台客户端
- SOA架构下ESB在卷烟厂的信息整合与决策支持
- 三维人脸识别:技术进展与应用解析
- 单张人脸图像的眼镜边框自动去除方法
- C语言绘制图形:余弦曲线与正弦函数示例
- Matlab 文件操作入门:fopen、fclose、fprintf、fscanf 等函数使用详解