1.requestParam(请求参数):使用@RequestParam注释将请求参数绑定到控制器中的方法参数。用于从请求访问查询参数值的@RequestParam注释。
如下请求URL:http://localhost:8080/springmvc/hello/101?param1=10¶m2=20
以下是@RequestParam注释支持的参数列表:
-
defaultValue -这是一个默认值,如果请求没有该值或该值为空,则作为回退机制。
-
name—要绑定的参数名称
-
required -参数是否为必选。如果为true,则发送该参数失败。
-
value -这是name属性的别名
2.requestBody(请求体):使用@RequestBody方法参数注释表明方法参数应该绑定到HTTP请求体的值。
3.PathVariable(路径变量):使用@PathVariable,URI模板可用于在@RequestMapping方法中方便地访问URL的选定部分。@PathVariable标识在传入请求的URI中使用的模式。@PathVariable注释只有一个用于绑定请求URI模板的属性值。允许在单个方法中使用多个@PathVariable注释。但是,请确保不超过一个方法具有相同的模式。
总结:
@RequestParam is use for query parameter(static values) like: http://localhost:8080/calculation/pow?base=2&ext=4
@PathVariable is use for dynamic values like : http://localhost:8080/calculation/sqrt/8
参考:java - @RequestParam vs @PathVariable - Stack Overflow @RequestBody、@PathVariable、@RequestParam三个注解用法与区别_@requestbody可以省略吗-CSDN博客