springMVC注解(二) requestBody,requestParam

@RequestBody

作用:

此注解注释的参数会被绑定到请求正文,会将对应的参数值自动匹配到注释的参数上

如果没有此请求中没有此参数,服务器不会处理这个请求,即常见的400 bad request

此注解忽略get请求,即使get 请求带上注解的参数依然是400 错误

作用范围:只能作用在方法参数上

作用时间:程序运行时

属性:required 默认为true,即请求时这个参数必须存在,如果设为false,请求时被注释的参数不是必须的,不会发生400错误

@RequestParam

介绍:

作用:和requestBody相类似,不过requestBody 必须是post请求这种有请求体的,而不能是get请求,

requestParam 则不必要求有请求体body

作用范围:只能作用在方法的参数上

作用时间:程序运行时

属性:

1.属性:name

作用:要绑定到的请求参数的名称。

2.属性:value

作用: 和name 一样,和name 互为别名,通过@AliasFor 注解

3.属性:required

指示请求中是否必须有该参数,默认为true,如果没有返回400错误,

可设置为false,则可不必强制传递被注解参数

4.属性;defaultValue

作用:当请求参数为空值或者未提供(requiredfalse ,绑定参数不是必须参数,参数可能为提供,或其他情况出现参数为空的时候),

则绑定参数的默认值就为defaultValue的值,defaultValue 的默认值为ValueConstants.DEFAULT_NONE

(此值意思是定义无默认值的值,此值提供的目的就是不会永远不会匹配用户声明的值),

即如果参数不提供,则参数值为null,参数为空,则参数值为空

猜你喜欢

转载自blog.csdn.net/kzcming/article/details/80746262