日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

SpringMVC注解@RequestParam全面解析____ 注解@RequestParam如何使用加与不加的区别

發布時間:2025/3/12 javascript 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SpringMVC注解@RequestParam全面解析____ 注解@RequestParam如何使用加与不加的区别 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

SpringMVC注解@RequestParam全面解析

在此之前,寫項目一直用的是@RequestParam(value=“aa” required=false)這個注解,但是并不知道它的意思。現在懂了,特來記錄下。

1、可以對傳入參數指定參數名

1 @RequestParam String inputStr 2 // 下面的對傳入參數指定為aa,如果前端不傳aa參數名,會報錯 3 @RequestParam(value="aa") String inputStr

2、可以通過required=false或者true來要求@RequestParam配置的前端參數是否一定要傳

1 // required=false表示不傳的話,會給參數賦值為null,required=true就是必須要有 2 @RequestMapping("testRequestParam") 3 public String filesUpload(@RequestParam(value="aa", required=true) String inputStr, HttpServletRequest request)

3、如果@requestParam注解的參數是int類型,并且required=false,此時如果不傳參數的話,會報錯。原因是,required=false時,不傳參數的話,會給參數賦值null,這樣就會把null賦值給了int,因此會報錯。

1 // required=false表示不傳的話,會給參數賦值為null,required=true就是必須要有 2 @RequestMapping("testRequestParam") 3 public String filesUpload(@RequestParam(value="aa", required=false) int inputStr, HttpServletRequest request) 4 若是前端頁面不傳參的話,此處就會報錯。當然可以用Integer代替int



注解@RequestParam如何使用加與不加的區別\

springmvc為我們提供了多個注解來處理入參和返回值,@RequestParam就是用來處理入參的,但可能你會奇怪,平時不使用這個參數也可以獲取到參數呀,確實加與不加都可以獲取參數,但還是有區別的,下面就來看下如何使用和區分

方法/步驟

  • 1

    為演示效果,首先需要創建一個測試控制類,然后創建一個測試方法,如圖所示,方法里添加一個參數,此時方法參數沒有添加注解

  • 2

    通過idea工具啟動web項目,然后通過瀏覽器訪問測試效果,不帶參數則獲取的參數為null,但頁面可以正常顯示,請求可以正常的執行,帶上參數之后,參數可以正常的獲取并打印出來了

  • 3

    下面來對比下添加注解的效果,但只是添加@RequestParam,沒有帶任何的注解設置參數。

  • 4

    再次通過瀏覽器訪問查看效果,此時帶上userName參數頁面可以正常顯示并打印出結果值,但如圖所示,不帶參數的時候,頁面報錯,返回400,并提示userName不存在

  • 5

    當然這樣的限制是可以選擇的,@RequestParam里添加required=false來關閉必須參數的限制,這樣就和不帶第一種不帶注解的效果一樣了

  • 6

    @RequestParam還可以在參數為空的情況下,為我們設置一個參數的默認值,如圖所示,可以看出來,沒有參數的情況下,獲取到的就是默認值

  • 7

    默認參數的key名稱是方法里的參數名稱,但通過@RequestParam可以自定義另外一個,因為在某些條件下,方法名稱固定下來不可以修改了,但請求的參數又需要通過另外一個參數key名稱來傳遞,這樣就可以通過這樣的方式來實現

    END

  • 注意事項

    • 雖然加與不加都可以獲取到參數,但特定的需求或限制的時候,就需要結合@RequestParam注解來使用了。

    總結

    以上是生活随笔為你收集整理的SpringMVC注解@RequestParam全面解析____ 注解@RequestParam如何使用加与不加的区别的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。