1、作用:
@RequestParam:将请求参数绑定到你控制器的方法参数上(是springmvc中接收普通参数的注解)
@RequestBody:将请求体中的参数绑定到控制器的方法参数上
2、语法:
语法:@RequestParam(value=”参数名”,required=”true/false”,defaultValue=””)
value:参数名
required:是否包含该参数,默认为true,表示该请求路径中必须包含该参数,如果不包含就报错。
defaultValue:默认参数值,如果设置了该值,required=true将失效,自动为false,如果没有传该参数,就使用默认值
@RequestBody(required=”true/false”)
如果是放在String参数上则是json字符串,如果是自定义的类型则会根据参数名注入
3、适用场景
总结:表格中空白的地方是无需测试的内容;因为请求体中的参数只能通过@RequestBody,不是请求体中的参数只可能通过@RequestParam获取
场景 | 请求方式 | 参数请求方式 | @RequestParam | @RequestBody |
---|---|---|---|---|
1 | get | ?拼接参数到url | √ | |
2 | get | form-data | × | |
3 | get | x-www-form-urlencoded | × | |
4 | get | application/json | √ | |
5 | post | ?拼接参数到url | √ | |
6 | post | form-data | √ |