聊一聊 @RequestParam
在 SpringBoot 中,我们常常使用 @RequestParam 来接受请求参数
当然除开 Param 还有
- @RequestHeader
- @RequestBody
- @RequestAttribute
- @PathVariable
在 @RequestParam 有3个属性
- value : 接收请求参数名,没有配置时 默认为变量名
- required : 请求值能否为null,没有配置时 默认为true,当请求中没有此参数,会抛出异常400,‘xxx’ is not present (当defaultValue 有值时会填入默认值,不会报错)
- defaultValue : 设置参数默认值,当没有接受到参数时,会填入默认值。(required 为空时设有默认值时不会报错)
此处使用案例解释
public Map<String,Object> getVideos(Integer id,
String name,
@RequestParam(value = "page",defaultValue = "1") Integer page,
@RequestParam(value = "per_page",defaultValue = "5")Integer rows,
@RequestParam(value = "category_id",required = false) String categoryId,
@RequestParam(value = "uploader_name",required = false) String uploaderName)
Page 和 Rows 因为是每一页都要用上所以加上默认值
categoryId 和 uploaderName 根据请求设置对应key