You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SpringBoot中@GetMapping映射失效问题求助

SpringBoot @GetMapping路由映射失效排查方案

我尝试了所有方法,但SpringBoot的@GetMapping注解始终无法实现路由映射。此前在另一个SpringBoot项目中该操作正常,因此我对此问题感到困惑。运行应用后SpringBoot无映射信息,访问页面时出现404错误,重新从Spring初始化网站构建项目仍存在相同问题。(项目结构显示主启动类位于根包下,控制器放在controller子包中)

以下是针对性的排查和解决步骤:

  • 确认包扫描范围:检查主启动类的@SpringBootApplication注解,默认会扫描主类所在包及其子包。如果控制器所在包不在这个范围内,需手动指定扫描路径:
    @SpringBootApplication(scanBasePackages = "com.example.demo.controller")
    
  • 验证控制器类注解:确保控制器类上标注了@RestController或@Controller,缺少这两个注解的类不会被Spring识别为控制器组件。
  • 检查Web依赖完整性:确认项目依赖中包含Spring Web starter:
    Maven配置:
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    
    Gradle配置:
    implementation 'org.springframework.boot:spring-boot-starter-web'
    
  • 查看启动日志:启动应用时,留意控制台是否有路由映射日志,比如Mapped "{/test}" onto public java.lang.String com.example.demo.controller.TestController.test()。如果没有此类日志,说明控制器未被加载。
  • 核对路由路径:检查@GetMapping的路径是否拼写正确,避免多余斜杠或参数格式错误(比如@GetMapping("/test/")和@GetMapping("/test")是不同路径)。
  • 清理项目缓存:执行mvn clean install(Maven)或gradle clean build(Gradle),清理编译缓存后重新构建项目。

内容的提问来源于stack exchange,提问作者Patrik Kelemen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 23:48:23