当前位置: 首页 > 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.hskmm.com/?act=detail&tid=40163

相关文章:

  • 重组蛋白技术概述
  • 题解:luogu P4948 数列求和
  • Codechef Painting Tree 题解 [ 蓝 ] [ 树形 DP ] [ 概率期望 ] [ 分类讨论 ]
  • Linux运行命令三种方式对比
  • return
  • 10.27 CSP-S模拟40 改题记录
  • P14322 「ALFR Round 11」E 空崎ヒナ 题解
  • [题解]P7074 [CSP-J 2020] 方格取数
  • 昨天线下赛的复盘
  • 二分查找边界
  • 同余最短路学习报告
  • 打包exe出错了:
  • Eclipse 安装Tomcat9 插件
  • 学习笔记:重链剖分
  • FRP 后端无法获取请求者IP解决方案
  • Day1
  • 正睿 2025 NOIP 20连测 Day9
  • Day24-C:\Users\Lenovo\Desktop\note\code\JavaSE\Basic\src\com\InOut
  • noi2.0下vscode快速配置指北 - Gon
  • 【通讯协议】IIC
  • Robot Queries
  • TCP/IP协议概述
  • 102302136 林伟杰 数据采集与融合作业1
  • 爆零记
  • DataGrip2022导入和导出sql文件
  • 【CI130x 离在线】如何运行 curl 脚本
  • 日总结 18
  • 一场比赛
  • 新东方第三节课名言作文
  • 【性能优化必看】CPU耗时飙高?GC频繁停顿?一文教你快速定位!​