這三個註解都可以放在傳入的參數上,那麼今天就以這三個註解具體以我個人的思路給大家分析分析。
首先@RequestBody
這個註解的作用主要是接收Json
格式的數據,具體用法上一篇文章基本已經詳細講明,這篇主要講@equestParam
與@PathVariable
兩個註解的作用。
@Requestparam這個註解
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”)
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”)
public String filesUpload(@RequestParam(value=“aa”, required=false) int inputStr,HttpServletRequest request)
若是前端頁面不傳參的話,此處就會報錯。當然可以用Integer代替int
其次 @RequestParam還表示將參數拼接在路徑後面,並且中間有?
分割
下面截圖展示
下面講一下@PathVariable這個註解,該註解表示請求參數以佔位符的形式拼接在路徑後面,中間由/
分割。
話不多說,直接上圖
這輩子堅持與不堅持都不可怕,怕的是獨自走在堅持的道路上!!!
歡迎加入技術羣聊