SpringBoot接口始终返回404状态码问题求助
SpringBoot接口返回404问题排查与解决
针对你遇到的404白标错误,结合你的代码和配置,给出以下几个排查和解决方向:
1. 显式指定@GetMapping的访问路径
你的@GetMapping未设置具体路径,虽然SpringBoot允许默认映射到根路径,但容易出现路径匹配模糊的问题。建议显式指定路径:
@GetMapping("/hello") public String hello() { return "Hello World"; }
修改后重启应用,访问http://localhost:8080/hello即可。
2. 检查启动日志中的接口映射记录
启动SpringBoot应用时,查看控制台日志,确认是否有类似以下的输出:
Mapped "{[/hello]}" onto public java.lang.String com.sbt.demo.DemoApplication.hello()
如果没有这条日志,说明控制器类未被Spring容器扫描到——不过你的DemoApplication类同时标注了@SpringBootApplication和@RestController,且启动类所在包com.sbt.demo与控制器类同包,无包扫描范围问题,这种情况大概率是编译或缓存问题。
3. 清理项目缓存并重新构建
执行Maven命令清理并重新编译项目:
mvn clean install
然后重启SpringBoot应用,确保编译后的类文件是最新的。
4. 检查上下文路径配置
查看application.properties或application.yml文件,是否设置了server.servlet.context-path属性。如果有类似配置:
server.servlet.context-path=/demo
访问路径需要加上该前缀,即http://localhost:8080/demo/hello。
5. 确认Spring Web依赖正常加载
你的pom.xml已引入spring-boot-starter-web依赖,该依赖包含Spring MVC核心组件,确保Maven已正确下载依赖,无缺失情况。可通过Maven依赖树确认:
mvn dependency:tree
按照以上步骤排查,基本可以解决你的404问题。
内容的提问来源于stack exchange,提问作者Nick
相关产品推荐
相关产品推荐

