以前没有想过为什么要加 @RequestParam,一般情况下,我是不加的,但是有时候,后端接收不到 前端传来的参数时,我加上,有时问题会得到解决。
但是今天突然想知道为什么要用它?
=======================================================================================
1.对于 @RequestParam,他有三个值,(当然不是每次全都用) value,required,defaultValue这三个值。
1.1 :value:是传参的参数名称,可以和参数一致,也可以自定义,有时在某些条件下,方法名称固定下来不可以修改了,但请求的参数又需要通过另外一个参数key名称来传递,这样就可以通过这样的方式来实现。
1.2 :required:默认值为true,此时,必须要有参数,且不能为空(否则会报错),但是可以显示地定义为 false,此时参数可以为空。这样就和不带注解的效果一样了(下面讲)
1.3 :defaultValue:表示默认值的意思,如果你不传参,那么,此参数的值就是默认值。
=======================================================================================
2. 不加 @RequestParam的方式:也是我一般使用的方式,此时方法中有参数,通过浏览器访问,不带参数则获取的参数值为null,但页面可以正常显示,请求可以正常的执行,带上参数之后,参数可以正常的获取
=======================================================================================
3.加 @RequestParam与 不加都可以获取到参数,但特定的需求或限制的时候,就需要结合@RequestParam注解来使用了
总结:@RequestParam 不是必须要加,就看你的需求了。