最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

快速解決SpringMVC @RequestBody 用map接收請求參數(shù)的問題

 更新時間:2018年08月07日 10:36:34   作者:xiaowu2017  
今天小編就為大家分享快速解決SpringMVC @RequestBody 用map接收請求參數(shù)的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

一:遇到個跨域調(diào)用,因為傳個我的參數(shù)不定,所以需要通過map來接收參數(shù)并進(jìn)行簽名驗證等操作

理所當(dāng)然的寫出了下面的代碼,但是發(fā)現(xiàn)map里并沒有獲取到傳來的key-value值

@RequestMapping(value = "/callback", produces = "text/html;charset=UTF-8") 
@ResponseBody 
public String callback(@RequestBody Map<String, String> params) { 
 return null; 
} 

之后我發(fā)現(xiàn)HttpServletRequest有一個getParameterMap方法好像很牛逼的樣子

@RequestMapping(value = "/callback", produces = "text/html;charset=UTF-8") 
@ResponseBody 
public String callback(HttpServletRequest httpServletRequest) { 
 Map<String, String> params = httpServletRequest.getParameterMap(); 
 return null; 
} 

然而這么寫還是不對,因為這個方法其實是返回的一個Map<String, String[]>對象,而不是我想象中的簡單的Map<String, String>類型,這里是可以獲得正確的參數(shù)的,但是需要手動進(jìn)行轉(zhuǎn)換,不可能是這種情況呀,一定有更好的解決辦法 “用@RequestParam試試”,然后就對了。。對了。。了。。

@RequestMapping(value = "/callback", produces = "text/html;charset=UTF-8") 
@ResponseBody 
public String callback(@RequestParam Map<String, String> params) { 
 return null; 
} 

二:以前,一直以為在SpringMVC環(huán)境中,@RequestBody接收的是一個Json對象,一直在調(diào)試代碼都沒有成功,后來發(fā)現(xiàn),其實 @RequestBody接收的是一個Json對象的字符串,而不是一個Json對象。然而在ajax請求往往傳的都是Json對象,后來發(fā)現(xiàn)用 JSON.stringify(data)的方式就能將對象變成字符串。

同時ajax請求的時候也要指定dataType: "json",contentType:"application/json" 這樣就可以輕易的將一個對象或者List傳到Java端,使用@RequestBody即可綁定對象或者List.

JavaScript 代碼:

<script type="text/javascript"> 
 $(document).ready(function(){ 
 var saveDataAry=[]; 
 var data1={"userName":"test","address":"gz"}; 
 var data2={"userName":"ququ","address":"gr"}; 
 saveDataAry.push(data1); 
 saveDataAry.push(data2);  
 $.ajax({ 
  type:"POST", 
  url:"user/saveUser", 
  dataType:"json", 
  contentType:"application/json",  
  data:JSON.stringify(saveData), 
  success:function(data){ 
     
  } 
  }); 
 }); 
</script>

Java代碼

@RequestMapping(value = "saveUser", method = {RequestMethod.POST }}) 
@ResponseBody 
public void saveUser(@RequestBody List<User> users) { 
 userService.batchSave(users); 
 } 

以上這篇快速解決SpringMVC @RequestBody 用map接收請求參數(shù)的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • IDEA 顯示Run Dashboard窗口的2種方式(推薦)

    IDEA 顯示Run Dashboard窗口的2種方式(推薦)

    這篇文章主要介紹了IDEA 顯示Run Dashboard窗口的2種方式,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • java中用float時,數(shù)字后面加f,這樣是為什么你知道嗎

    java中用float時,數(shù)字后面加f,這樣是為什么你知道嗎

    這篇文章主要介紹了java用float時,數(shù)字后面加f,這樣是為什么你知道嗎?具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • 解決子線程中獲取不到HttpServletRequest對象的問題

    解決子線程中獲取不到HttpServletRequest對象的問題

    這篇文章主要介紹了解決子線程中獲取不到HttpServletRequest對象的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • Java判斷本機IP地址類型的方法

    Java判斷本機IP地址類型的方法

    Java判斷本機IP地址類型的方法,需要的朋友可以參考一下
    2013-03-03
  • java中Arrays.sort()排序方法舉例詳解

    java中Arrays.sort()排序方法舉例詳解

    這篇文章主要給大家介紹了關(guān)于java中Arrays.sort()排序方法舉例詳解的相關(guān)資料,Java?Arrays.sort()方法對數(shù)組進(jìn)行排序,通常情況下直接傳入數(shù)組,默認(rèn)升序排序,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-11-11
  • java并發(fā)學(xué)習(xí)-CountDownLatch實現(xiàn)原理全面講解

    java并發(fā)學(xué)習(xí)-CountDownLatch實現(xiàn)原理全面講解

    這篇文章主要介紹了java并發(fā)學(xué)習(xí)-CountDownLatch實現(xiàn)原理全面講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • redis與ssm整合方法(mybatis二級緩存)

    redis與ssm整合方法(mybatis二級緩存)

    本文給大家介紹redis與ssm整合方法(mybatis二級緩存)。主要是利用redis去做mybatis的二級緩存,mybaits映射文件中所有的select都會刷新已有緩存,如果不存在就會新建緩存,所有的insert,update操作都會更新緩存
    2017-12-12
  • zookeeper監(jiān)聽器原理的詳解

    zookeeper監(jiān)聽器原理的詳解

    今天小編就為大家分享一篇關(guān)于zookeeper監(jiān)聽器原理的詳解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • mybatis動態(tài)sql之新增與更新方式

    mybatis動態(tài)sql之新增與更新方式

    這篇文章主要介紹了mybatis動態(tài)sql之新增與更新方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • Java的常用包

    Java的常用包

    本文主要對Java的常用包進(jìn)行一一介紹。具有一定的參考價值,下面跟著小編一起來看下吧
    2017-01-01

最新評論

胶州市| 洪湖市| 天水市| 修文县| 遵义市| 厦门市| 新疆| 苏尼特右旗| 隆昌县| 景泰县| 永州市| 长宁区| 长宁区| 饶平县| 徐水县| 鄂尔多斯市| 工布江达县| 东乡族自治县| 安新县| 安溪县| 安新县| 大厂| 射阳县| 二连浩特市| 天水市| 云安县| 岳阳市| 金湖县| 德清县| 石柱| 谢通门县| 贺州市| 平乡县| 德昌县| 牙克石市| 民乐县| 柳州市| 金华市| 宁波市| 北海市| 察哈|