spring boot 3 集成 druid 数据库连接池及解决 javax.servlet.http.httpservlet 错误
本文详细介绍如何在 Spring Boot 3.0.5 环境下配置 Druid 1.2.16 数据库连接池,并解决配置过程中可能出现的 java: 无法访问 javax.servlet.http.HttpServlet 错误,最终成功访问 Druid 监控页面。

Spring Boot 3.x 版本迁移至 Jakarta EE API,而 Druid 部分组件仍依赖于旧的 javax.servlet API,导致直接使用 ServletRegistrationBean 注册 Druid 的 StatViewServlet 时出现兼容性问题。 简单地启用 spring.datasource.druid.stat-view-servlet.enabled: true 或添加 @ComponentScan("com.alibaba.druid") 并不能保证顺利解决问题,甚至可能引发其他异常,例如 FilterRegistrationBean 兼容性错误。
核心问题在于 javax.servlet 和 Jakarta Servlet API 的版本冲突。 解决方法需要根据 Druid 和 Spring Boot 版本选择合适的依赖或调整代码。 这可能包括:
立即学习“Java免费学习笔记(深入)”;
使用 Jakarta EE 兼容的 Druid 版本或依赖: 查找并使用与 Jakarta EE 兼容的 Druid 版本,该版本已更新其依赖项以支持新的 API。手动配置 Servlet 和 Filter: 避免使用 ServletRegistrationBean 和 FilterRegistrationBean,而是通过编写自定义配置类,手动注册 Druid 的 StatViewServlet 和 WebStatFilter,并使用 Jakarta Servlet API 的相关类。修改 Druid 配置: 根据 Druid 的文档,查看是否有配置选项可以调整其行为以适应 Spring Boot 3 的环境。
本文旨在指出问题根源,并提供解决思路。 具体的解决方案需要根据实际的依赖版本进行调整,建议参考 Druid 官方文档以及 Spring Boot 的相关迁移指南。 请注意,仅依赖于 druid-spring-boot-starter 并不一定能自动解决所有兼容性问题。
以上就是Spring Boot 3下Druid数据库连接池配置及javax.servlet.http.HttpServlet错误如何解决?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/170000.html
微信扫一扫
支付宝扫一扫