springmvc之@RequestParam注解

1. 注解的属性含义

String name;表示绑定请求参数的名称

String value;表示上面的name的别名。

实际上,上面两个名称互为对方的别名。是用谁都可以。

Boolean required;表示参数是否是必须的,如果requiredtrue,则defaultValue的值就没有意义。

String defaultValue;表示参数的默认值。

2.举个栗子

使用案例:如果请求参数中有currentPage参数就把参数值赋值给main()的形参中,没有的情况下就给main()的形参赋值为1
@RequestMapping("/main")
public String main(@RequestParam(value="currentPage", defaultValue="1", required=false) int currentPage, Model model) {
}

3.注解的源码

@AliasFor用来给注解的属性起别名,让使用注解时更加容易理解。

public @interface RequestParam {
  
   /**
    * Alias for {@link #name}.
    */
   @AliasFor("name")
   String value() default "";
  
   /**
    * The name of the request parameter to bind to.
    * @since 4.2
    */
   @AliasFor("value")
   String name() default "";
  
   /**
    * Whether the parameter is required.
    * <p>Defaults to {@code true}, leading to an exception being thrown
    * if the parameter is missing in the request. Switch this to
    * {@code false} if you prefer a {@code null} value if the parameter is
    * not present in the request.
    * <p>Alternatively, provide a {@link #defaultValue}, which implicitly
    * sets this flag to {@code false}.
    */
   boolean required() default true;
  
   /**
    * The default value to use as a fallback when the request parameter is
    * not provided or has an empty value.
    * <p>Supplying a default value implicitly sets {@link #required} to
    * {@code false}.
    */
   String defaultValue() default ValueConstants.DEFAULT_NONE;

 --------------------------------------------

如有错误,还请大侠及时指出,多谢!

 --------------------------------------------



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值