Bug系列(二):关于注解传参的问题

52 阅读1分钟

今天总结一下在使用spring boot的web方面的注解所遇到的一些bug:

1:报以下错误,模糊的映射错误 image.png

image.png 这类错误时因为在同一个controller类中,有相同的路径映射,如两个两个方法上都有@getMapping注解且路径都是一样的,浏览器就因找不到要去访问哪个路径就会报错,在任意一个路径上修改路径名即可。

2:接收参数错误

image.png 在基于restful规范接收浏览器传参数时, 在基于查询和删除时浏览器会传id回来,我们接受id用@PathVariable注解来接受,当用@RequestParam注解就会报以上的错误。这里简单讲一下这两个注解的区别:

@PathVariable
适用场景:用于获取 URL 路径中动态部分的参数(如/users/{id}中的id)。
RESTful 特点

  • 用于标识资源的唯一标识符(如用户 ID、文章 ID)。
  • 通常用于 GET(查询)、DELETE(删除)、PUT(更新)请求。

@RequestParam
适用场景:用于获取 URL 中?key=value形式的参数(如/users?name=John&age=30)。
RESTful 特点

  • 用于过滤、分页或可选参数。
  • 通常用于 GET 请求。