@RequestParam注解的使用、@RequestHeader注解的使用

本文介绍了@RequestParam注解的基本用法,包括如何设置必填项、默认值及自定义提示语等内容,并探讨了defaultValue与required属性之间的关系。


有人说,这么简单个注解还用说吗?
额,这确实是个简单的注解。

设置username为必填项,代码怎么写?

那还不简单,加required=true啊:

test400(@RequestParam(value = "username",required=true) String username)

这样写对吗?
当然是对的,但是不够简练 。因为required的默认值就是true,required=true可以去掉。

defaultValue的作用是什么

设置默认值。
这个这么简单,我一开始还理解错了,以为是校验不通过后的提示message,汗!被参数校验搞的太头疼了。

注:设置了defaultValue之后,required=true失效,因为总是有默认值。

defaultValue可以设置为null吗?

不可以,因为会报错:Attribute value must be constant

@RequestParam可以自定义提示语吗

自带的提示语:
Required String parameter 'username' is not present

用户肯定看不懂的,他们希望的提示语:
用户名是必填项

别处心裁自创了个:

test400(
@Valid 
@NotEmpty(message="用户名不能为空") 
@RequestParam(value = "username",required=false) String username)

发现然并卵,黑了。

如果一定要自定义提示的话,可以设置成为required=false,然后自己用代码校验,这样虽然不优雅,至少完成了功能。

@RequestParam的required默认就是true,所以不用再写一遍了

代码:

void method(
    @RequestParam(value = "user_account") String userAccount,
    @RequestParam(value = "password",required = true) String password // 这个required=true可以不写
){}

一直是写true的,代码评审被人点出来,尴尬,所以做技术还是细致点。

@RequestHeader也是一样的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值