国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

詳解SpringMVC @RequestBody接收Json對象字符串

2019-11-26 13:16:42
字體:
供稿:網(wǎng)友

頁面提交請求參數(shù)有兩種,一種是form格式提交,一種json格式提交

通常情況下我們使用的都是form格式提交的數(shù)據(jù),數(shù)據(jù)格式:k=v&k=v,這個時候用springMVC接收參數(shù)沒有問題,但有時候前端會通過json向后端傳遞數(shù)據(jù),就會出現(xiàn)springMVC獲取不到參數(shù)值的情況

注意:jQuery的$.post方法雖然也可以傳遞json格式數(shù)據(jù),但實際上是用的form格式提交,jquery會幫你把json轉(zhuǎn)成form格式提交后臺

所以其實可以通過$.post,$.get來提交json格式,讓jquery幫你轉(zhuǎn)換,可是如果后端用restful,那就只能用以下方法解決

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:"PUT",        url:"/user",        dataType:"json",          contentType:"application/json;charset=utf-8",               data:JSON.stringify(saveData),        success:function(data){                             }       });    });  </script>  

后端springMVC接收

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

注意:提交的data必須為json格式字符串,content-type為'application/json; charset=utf-8'表明提交的類型和編碼格式,dataType是預期服務(wù)端返回的數(shù)據(jù)類型,其中對json字符串的格式有嚴格要求,形如:'{"type":"type","fileftppath":"fileftppath","map":{"id":1,"name":"suo"}}',字符串,key的雙引號是必須的,否則400 bad request,當然如果你數(shù)據(jù)格式不正確,也會400,比如你傳了個"step1",后端用Integer接收,也是400,直接從json對象轉(zhuǎn)json串,這個json串格式是不會有問題的,如果400,只能是數(shù)據(jù)格式了

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持武林網(wǎng)。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 双柏县| 靖远县| 拉孜县| 古丈县| 团风县| 华亭县| 新余市| 余庆县| 阜宁县| 江阴市| 武鸣县| 古浪县| 加查县| 崇明县| 普兰店市| 綦江县| 兴安盟| 阿拉善左旗| 饶阳县| 阜城县| 湖南省| 辽阳县| 裕民县| 英德市| 深水埗区| 陆川县| 阜新| 葫芦岛市| 莱州市| 桂平市| 芦山县| 屯留县| 怀远县| 都昌县| 赤峰市| 甘谷县| 页游| 长葛市| 巫溪县| 张北县| 定陶县|