真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

@RequestParam和@RequestBody怎么用

這篇文章給大家分享的是有關(guān)@RequestParam和@RequestBody怎么用的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

創(chuàng)新互聯(lián)專注于東鄉(xiāng)族企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站開發(fā),購物商城網(wǎng)站建設(shè)。東鄉(xiāng)族網(wǎng)站建設(shè)公司,為東鄉(xiāng)族等地區(qū)提供建站服務(wù)。全流程定制制作,專業(yè)設(shè)計,全程項目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

前端向后端傳遞參數(shù),后端怎么去接收,就會想到 spring 的注解

之前的話,我一直用的是 RequestParam("userName") String userName 這種形式,講道理不怎么用 RequestParam String userName

無意間該去看看這兩個是有什么不同了.

@RequestParam  @RequestBody (以 json 數(shù)據(jù)的形式接收)

如果不寫 @RequestParam(xxx) 注解的話,那么就前端可以有 可以沒有對應(yīng)的xxx名字都行

如果有xxx名,那么就會自動匹配;

如果沒有,請求也能正確發(fā)送。

一、 @RequestParam

/**   * 用戶登錄   * @param userName   * @param password   * @return   */  @RequestMapping(value = "login", method = RequestMethod.POST)  public String login(@RequestParam String userName,            @RequestParam String password){      public BaseResponse login(@RequestParam("user") String userName,               @RequestParam("psd") String password){

如果前端不傳 userName 或者 password 參數(shù)名的參數(shù)就會報錯

1. 用 @RequestParam 前端傳過來的參數(shù)名默認(rèn)為 userName 我們String后面起的參數(shù)名

如果前端不傳 user 或者 psd 參數(shù)名的參數(shù)就會報錯

2. 用 @RequestParam("user") @RequestParam("psd"), 給前端傳遞過來的參數(shù)指定參數(shù)名

錯誤信息

3. "message":"Required String parameter 'userName' is not present"

其實還有其他的形式

看下面

@RequestParam(value="user" required=false) 這個注解

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

required = false 表示不傳的話,會給參數(shù)賦值為 null ,required = true 就是必須要有

注意:

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

使用 Integer 包裝類型的話還要需要注意空指針異常

二、@RequestBody

@RequestBody 以 字符串 的形式接收前端傳過來的請求體中的 json 數(shù)據(jù)

@RequestMapping(value = "login", method = RequestMethod.POST)  public String login(@RequestBody String jsonStr){

@RequestBody 以 簡單對象 接收前端傳過來的 json 數(shù)據(jù)

@RequestMapping(value = "login", method = RequestMethod.POST)  public String login(@RequestBody User user){

@RequestBody以 復(fù)雜對象 接收前端傳過來的 json 數(shù)據(jù)

@RequestMapping(value = "login", method = RequestMethod.POST)  public String login(@RequestBody Team team){

感謝各位的閱讀!關(guān)于“@RequestParam和@RequestBody怎么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!


標(biāo)題名稱:@RequestParam和@RequestBody怎么用
URL鏈接:http://weahome.cn/article/jsppgs.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部