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

Spring Boot CRUD应用遇Whitelabel Error 404问题求助

解决Spring Boot CRUD应用404错误问题

以下是针对你的问题的排查与解决步骤:

1. 验证控制器注解与路径配置

  • 确保控制器类标注了@RestController(而非普通@Controller,后者需搭配@ResponseBody才能返回JSON)
  • 核对类级与方法级的路径映射是否匹配目标接口/api/v1/employees,示例正确写法:
    @RestController
    @RequestMapping("/api/v1")
    public class EmployeeController {
        @GetMapping("/employees")
        public List<Employee> getAllEmployees() {
            // 数据查询逻辑
            return employeeService.findAll();
        }
    }
    

2. 检查主类组件扫描范围

  • Spring Boot默认扫描主类所在包及其子包的组件,若控制器在主类的外部包,需确认@ComponentScan的路径是否覆盖控制器所在包:
    @SpringBootApplication
    @ComponentScan(basePackages = {"com.yourpackage.main", "com.yourpackage.controller"})
    public class CrudApplication {
        public static void main(String[] args) {
            SpringApplication.run(CrudApplication.class, args);
        }
    }
    
  • 优先建议调整包结构,将控制器放在主类的子包下,避免手动配置扫描路径的失误。

3. 解析控制台启动日志

  • 查找日志中是否存在Mapping相关输出,比如Mapped "{[/api/v1/employees],methods=[GET]}",若没有则说明控制器未被Spring容器注册
  • 排查是否有组件加载失败的报错(如类依赖缺失、注解配置错误)

4. 核对pom.xml依赖

  • 确认已引入Spring Web Starter依赖,保证Web功能正常启用:
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    
  • 检查是否存在依赖版本冲突,可通过mvn dependency:tree命令排查重复或不兼容的依赖包

5. 验证请求匹配规则

  • 确认请求使用的是GET方法,与控制器上的@GetMapping注解匹配(若误用@PostMapping等其他方法注解会触发404)
  • 注意路径大小写,Spring Boot默认对路径大小写敏感,需保证请求路径与映射路径完全一致

6. 排查拦截类干扰

  • 检查项目中是否存在自定义拦截器、过滤器,确认它们未拦截/api/v1/employees路径的请求

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 05:45:36