故障现象 某SpringBoot开发的接口服务启动过程无任何报错控制台显示服务正常启动端口监听正常但通过Postman或浏览器访问接口时始终返回404 Not Found接口无法正常响应涉及用户登录、订单查询等核心接口影响开发进度。### 问诊分析 结合SpringBoot接口开发规范排查方向聚焦于包扫描、注解使用、请求路径配置三个核心维度逐步定位问题1. 包扫描范围不足SpringBoot默认扫描启动类所在包及其子包下的组件排查发现Controller类所在的包不在启动类的扫描范围内导致Controller未被Spring容器注册接口无法被识别进而返回404。例如启动类位于com.example.pharmacy包下而Controller类位于com.example.api包下未被自动扫描。2. 注解使用错误检查Controller类发现部分接口未添加RestController或Controller注解导致Spring无法识别该类为控制器部分接口方法仅添加了RequestMapping注解但未指定请求方式GET/POST且请求路径存在大小写错误SpringBoot请求路径默认区分大小写导致请求路径不匹配。3. 静态资源与接口路径冲突项目中静态资源如HTML、CSS文件放在src/main/resources/static目录下而接口路径与静态资源路径重名如接口路径为/api/index静态资源有index.html导致SpringBoot优先匹配静态资源接口无法被正确路由返回404。4. 配置文件异常检查application.yml配置发现配置了server.servlet.context-path/api但接口请求时未添加该上下文路径导致请求路径不完整无法匹配到对应的接口。### 解决方案 针对上述问题逐一修复确保接口正常访问1. 调整包扫描范围将Controller类移动到启动类所在包及其子包下或在启动类上添加ComponentScan注解指定扫描范围例如ComponentScan(basePackages {com.example.pharmacy, com.example.api})确保Controller被Spring容器注册。2. 修正注解使用给所有Controller类添加RestController注解返回JSON数据接口方法添加对应的请求方式注解GetMapping、PostMapping规范请求路径确保路径大小写、斜杠拼接正确避免路径错误。例如将RequestMapping(/userLogin)改为PostMapping(/userLogin)确保请求方式与前端一致。3. 避免路径冲突修改接口路径或静态资源名称确保接口路径与静态资源路径不重名若需保留重名路径可通过配置SpringBoot静态资源访问规则区分静态资源和接口请求。4. 完善请求路径若配置了server.servlet.context-path请求接口时需在路径前添加该上下文路径例如配置为/server.servlet.context-path/api接口请求路径应为http://localhost:8080/api/userLogin。### 规避技巧 1. 开发接口时严格遵循SpringBoot规范确保Controller类在包扫描范围内注解使用正确 2. 接口路径命名采用统一规范如全小写、用下划线分隔避免大小写错误和路径冲突 3. 配置上下文路径后及时同步给前端开发人员确保请求路径正确 4. 接口开发完成后先通过Postman测试接口可用性再进行后续联调及时发现路径和注解问题。