gpt4 book ai didi

浅谈@RequestParam(required = true)的误区

转载 作者:qq735679552 更新时间:2022-09-28 22:32:09 34 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章浅谈@RequestParam(required = true)的误区由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

@RequestParam(required = true)的误区

先说结论

required = true是在前端没有传参数的时候报错,并不能防止参数为空.

考虑一下代码:

?
1
2
3
4
@GetMapping ( "/userInfo" )
     public void userInfo( @RequestParam (required = true ) Integer id) {
            ...
     }

如果请求如下就会报400错误:

http://localhost:8088/userInfo 。

但构造以下请求,可以使id为空:

http://localhost:8088/userInfo?id= 。

参数总结

  • required=true表示前端必须传参数。
  • required=false表示前端不传参数的时候,会将参数置为null。因此假如参数是int这种不能赋值为null的类型,就可能会报错。

使用了defaultValue,required只能为false,前端不传参数时会将参数置为defaultValue.

@RequestParam(required=false int id)值不传报错

@RequestParam(required=false int id):required=false说明了可以不传值,如果是 。

?
1
2
// 注意现在是String类型的id
@RequestParam (required= false Sting id)

这种不传值就不会报错 。

但如果是标题上写的int类型这种 。

?
1
@RequestParam (required= false int id)

就会报错,因为null不能赋给int.

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我.

原文链接:https://blog.csdn.net/a34434180/article/details/105155852 。

最后此篇关于浅谈@RequestParam(required = true)的误区的文章就讲到这里了,如果你想了解更多关于浅谈@RequestParam(required = true)的误区的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com