【Spring】@RequestParam详解

@RequestParam注解用于将HTTP请求中的参数映射到控制器方法的参数上,适用于GET、POST等请求方式。主要参数包括value(默认为变量名)、required(默认true,非必需会导致404错误)和defaultValue(未提供时的默认值)。当请求中有多个同名参数时,可以使用数组或List接收。注意,基本类型接收时需设置required为false并提供defaultValue,以避免500错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

@RequestParam的中文意思为“请求参数”,它主要用于将请求参数区域的数据映射到控制层(Controller)方法的参数上。

以下情况@RequestParam可以获取到参数:

1.vue的get请求

2.html的表单

3.html,把参数拼接在url里

@RequestParam注解主要的参数:

  1. value:请求中传入参数的名称,如果不设置后台接口的value值,则会默认为该变量名。
  2. required:该参数是否为必传项。默认是true,表示请求中一定要传入对应的参数,否则会报404错误,如果设置为false时,当请求中没有此参数,将会默认为null
  3. defaultValue:参数的默认值,如果请求中没有同名的参数时,该变量默认为此值。注意默认值可以使用SpEL表达式,如"#{systemProperties['java.vm.version']}"
  4. name:作用同value相同

如果在请求中传入多个同名参数,比如:url?userName=hhh&userName=wo时怎么办?

其实此时传入的数据格式是:"hhh,wo",即多个数据之间使用逗号分隔开,在后台接口中可以使用数组或者list类型的变量来接收:

public String requestparam8(@RequestParam(value="userName") String []  userNames) 

//或者

public String requestparam8(@RequestParam(value="list") List<String> list)

注意:

如果后端使用基本数据类型来接收参数,那么一定要设置required为false并且设置defaultValue以防止500错误,而引用数据类型则无需设置,因为引用数据类型是可以接收null的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值