SpringBoot的Controller层没有生效?

@RestController 是 Spring Framework 中用于构建 RESTful Web 服务的注解。如果你的 @RestController 不生效,可能有几个原因。以下是一些可能的解决方案:

1.  正确的依赖和版本: 确保你的项目中包含了正确的 Spring Boot 依赖,并且版本是兼容的。你可以在 pom.xmlbuild.gradle 文件中检查依赖。

2.  主应用程序类位置: 确保 @SpringBootApplication 注解标记的主应用程序类位于根包下或者使用 @ComponentScan 指定扫描的包。

3.  包扫描设置: 如果你的 @RestController 类不在主应用程序类的包或其子包下,确保使用 @ComponentScan 注解扫描到包含你的 @RestController 类的包。

4.  Spring Boot 启动日志: 启动应用程序时查看控制台输出,Spring Boot 通常会打印出哪些包被扫描到以及是否发现了 @RestController 类。这可以帮助你确定是否有包扫描问题。

5.  端口冲突: 确保应用程序启动的端口没有被其他应用程序占用,默认情况下是8080。你可以在 application.propertiesapplication.yml 中设置端口。

6.  URL路径问题: 

         (1)  路径斜杠问题: 注意在路径中使用斜杠的方式。通常情况下,以斜杠开头的路径表示相对于应用程序的根路径,而不以斜杠开头的路径表示相对于当前路径。

         (2)  路径变量: 如果你在路径中使用了变量,确保使用 @PathVariable 注解将变量与方法参数关联。

!!!重点!!!   : 因为经常不使用路径拼接请求,所以很容易忽略,当请求体是路径参数拼接的时候,直接写参数或者加@Param("参数名"),而不是使用@PathVariable来接收路径参数.

当然,尽量不要使用路径拼接参数,安全性不好.

这是postman测试返回数据,可以作为参考

{
    "timestamp": "2024-01-02T06:33:35.304+0000",
    "status": 404,
    "error": "Not Found",
    "message": "No message available",
    "path": "/business/productCategory/categoryTree"
}

  • 21
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值