当前位置: 首页 > news >正文

关于springboot+Servlet报错404的问题

假如遇到使用springboot+Servlet的方式进行开发或者学习(一般是作业),其中有个经常遇到的问题是访问不到,会报404的错误,资源未加载;
网上有很多解决方法,例如加ServletComponentScan()包扫描路径,但是我帮一个学弟改依然无法解决;
经过重重对比和纠错,终于找到了问题 原来Springboot版本为3.7.0改为2.6.15之后就解决了,问ai原因如下

在 Spring Boot 2.6.15 中能正常访问,而在 Spring Boot 3.5.7 中无法访问,可能是由于 Spring Boot 3.x 版本的一些特性变化导致的。以下是一些可能的原因及解决方法:
包路径变更问题:Spring Boot 3.x 全面迁移到 Jakarta EE 9+,Servlet 相关的包路径从javax.servlet变为jakarta.servlet。而你提供的代码中导入的仍然是javax.servlet相关的包,这在 Spring Boot 3.5.7 中可能会导致类无法正确加载。解决方法是将所有javax.servlet相关的导入语句改为jakarta.servlet相关的导入语句。例如,将import javax.servlet.ServletException;改为import jakarta.servlet.ServletException;等。
Servlet 注册问题:在 Spring Boot 3.x 中,Servlet 的注册方式可能需要更严格的配置。虽然你使用了@WebServlet注解,但可能存在 Spring 无法识别该 Servlet 的情况。可以尝试在主配置类上添加@ServletComponentScan注解,以确保 Spring 能够扫描到你的 Servlet 类。例如:
java
运行

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;@SpringBootApplication
@ServletComponentScan(basePackages = "com.mes.servlet")
public class YourApplication {public static void main(String[] args) {SpringApplication.run(YourApplication.class, args);}
}

依赖配置问题:Spring Boot 3.x 对依赖的要求可能与 2.x 版本不同。确保你的项目中包含了正确的 Servlet 依赖。在 Spring Boot 3.x 中,应该使用jakarta.servlet-api依赖。例如:
xml

<dependency><groupId>jakarta.servlet</groupId><artifactId>jakarta.servlet-api</artifactId><version>5.0.0</version><scope>provided</scope>
</dependency>

这边大家如果遇到相关问题可以尝试一下

http://www.hn-smt.com/news/446/

相关文章:

  • P14322 「ALFR Round 11」E 空崎ヒナ 题解 (markdown)
  • [题解]P7074 [CSP-J 2020] 方格取数
  • 二分查找边界
  • P3232 [HNOI2013] 游走
  • 软件工程学习日志2025.10.27
  • 深入解析:TCP/IP 四层模型协作流程详解
  • Windows全版本激活教程(仅供测试)
  • 10月27日
  • javascript构造对象数组向服务器端传输
  • 10.25 CSP-S 模拟赛
  • 鲜花10/27
  • 读《程序员的修炼之路:从小工到专家》有感
  • 想让默认头像不再千篇一律,就顺手复刻了一下 GitHub 的思路
  • java(3)基础规范
  • 读书日记3
  • Tuack 生成 OI 比赛题目 PDF 笔记
  • 数据库三大范式、Union和Union all的区别
  • CSP-S2025 游记
  • 「LG3600-随机数生成器」题解
  • MathType7下载包安装教程2025最新下载+安装+汉化激活(附安装包,超详细)
  • 2025强网杯ezphp复现
  • 漏洞报告被拒绝的常见原因及避免方法
  • 【IEEE出版 | 重庆邮电大学主办 | 多届次、高层次】第六届人工智能与计算机工程国际学术会议(ICAICE 2025)
  • Docker容器里面部署的Jenkins的Java17升级到21版本(无需删除之前容器,内部在线升级) - 攻城狮
  • 报表知识
  • 渐进过程中大O与小o混用
  • 消息队列的有序性
  • 【LTDC】DMA2D —— 嵌入式系统的 GPU
  • unity管理器设计:Manager of Managers
  • iview table 排序 columns 里面写 sortable: custom 不要写 sortable: true 不然会进行二次内部排序序号等 字段。