springMVC中@RequestParam和@RequestBody注解的用法


  springMVC中@RequestParam注解用在Controller層獲解析、提取參數,當然你也可以用request.getParameter("name")來獲取參數,而@RequestParam注解接收參數有幾種不同的寫法。

1、test(String name)

像正常的方法接收參數,不帶@RequestParam注解。這種寫法,如果沒有name參數不會報錯。

2、test(@RequestParam String name)

帶@RequestParam注解。這種寫法,name參數為必須,如果沒有會報錯。

3、test(@RequestParam("userName") String name)

帶@RequestParam注解。這種寫法,可以對接收的參數進行重命名。即接收到userName改成name。

4、test(@RequestParam(value="userName",request=false) String name)

帶@RequestParam注解。這種寫法,通過設置request參數來設定參數是否為必須,true為必須,false為非必須。

 

PS:@RequestBody注解也可以用來獲取參數。與@RequestParam不同點在於:

@RequestParam注解通常處理content-type為默認的application/x-www-form-urlcoded的請求。

@RequestBody注解用來處理content-type為application/json或者是application/xml等。

比如:一個json格式的請求參數,且沒有參數名,就可以用下面的方式獲取。

1、test(@RequestBody String json)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM