spring?boot前后端交互之?dāng)?shù)據(jù)格式轉(zhuǎn)換問(wèn)題
在前后端分離開(kāi)發(fā)的項(xiàng)目種,前端獲取數(shù)據(jù)的方式基本都是通過(guò)Ajax。請(qǐng)求方法也有所不同,常見(jiàn)的有POST,GET,PUT,DELETE等。甚至連請(qǐng)求的數(shù)據(jù)類(lèi)型都不一樣,x-www-form-urlencodeed,form-data,json等。
那么在前后端交互過(guò)程中,具體的數(shù)據(jù)該如何接收呢?
json數(shù)據(jù)
{
"id": 0,
"address_id": 6,
"detail_address": "我是11251111111",
"user_id": 611111,
"create_time": null,
"update_time": null,
"name": "測(cè)試人11111",
"phone": "13378954789111"
}@RequestMapping(value = "/add",method = RequestMethod.POST,produces = "application/json;charset=UTF-8")
public ResponseData addUsers(@RequestBody UserInfo userInfo){
if (StringUtils.isNotEmpty(userInfo.getAccount())){
if (userInfoService.ifUserExist(userInfo.getAccount())){
return ResponseData.error(500,"賬戶(hù)已存在,請(qǐng)重新設(shè)置!");
}
}
System.out.println(userInfo.toString());
}
接收json數(shù)據(jù)的兩個(gè)關(guān)鍵點(diǎn):
- json類(lèi)型聲明
produces = "application/json;charset=UTF-8"
@RequestMapping接口處聲明傳輸類(lèi)型未json。
- @RequestBody聲明Java Bean
json數(shù)據(jù)必須用對(duì)象接收,且必須用@RequestBody聲明。
x-www-form-urlencodeed表單數(shù)據(jù)

表單數(shù)據(jù)有兩種接收類(lèi)型:
- @RequestParam接收
@RequestMapping(value = "/fuzzy",method = RequestMethod.POST)
public ResponseData fuzzyQuery(@RequestParam("carType") Integer carTpe, @RequestParam("carStatus") Integer carStatus, @RequestParam("name") String name, @RequestParam("carNo") String carNo){
//String name1 = "%"+name+"%";
List<CarInfo> carInfos = carInfoService.fuzzySelect(carTpe, carStatus, name, carNo);
return ResponseData.success(carInfos);
}使用@RequestParam的參數(shù)必須與傳入的參數(shù)一致
- 對(duì)象接收
@RequestMapping(value = "/pageList",method = RequestMethod.POST)
public ResponseData carPageList(CarInfoSelect carInfoSelect){
IPage<CarInfoResult1> page = carInfoService.carPageList(carInfoSelect);
//LayuiPageInfo pageInfo = LayuiPageFactory.createPageInfo(page);
return ResponseData.success(page);
}傳入的參數(shù)很多,將這些參數(shù)封裝為一個(gè)java對(duì)象來(lái)接收,注意和josn數(shù)據(jù)的區(qū)別。
到此這篇關(guān)于spring boot前后端交互之?dāng)?shù)據(jù)格式轉(zhuǎn)換的文章就介紹到這了,更多相關(guān)spring boot數(shù)據(jù)格式轉(zhuǎn)換內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java導(dǎo)出Word文檔的實(shí)現(xiàn)方法詳解
這篇文章主要給大家介紹了關(guān)于Java導(dǎo)出Word文檔的實(shí)現(xiàn)方法,在日常的開(kāi)發(fā)工作中,我們時(shí)常會(huì)遇到導(dǎo)出Word文檔報(bào)表的需求,比如公司的財(cái)務(wù)報(bào)表、醫(yī)院的患者統(tǒng)計(jì)報(bào)表、電商平臺(tái)的銷(xiāo)售報(bào)表等等,需要的朋友可以參考下2023-08-08
解決SpringBoot打成jar運(yùn)行后無(wú)法讀取resources里的文件問(wèn)題
這篇文章主要介紹了解決SpringBoot打成jar運(yùn)行后無(wú)法讀取resources里的文件問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-08-08
Java內(nèi)存區(qū)域與內(nèi)存溢出異常詳解
這篇文章主要介紹了Java內(nèi)存區(qū)域與內(nèi)存溢出異常詳解的相關(guān)資料,需要的朋友可以參考下2017-03-03
mybatis連接數(shù)據(jù)庫(kù)實(shí)現(xiàn)雙表查詢(xún)
本文主要介紹了mybatis連接數(shù)據(jù)庫(kù)實(shí)現(xiàn)雙表查詢(xún),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-09-09
Spring boot基于ScheduledFuture實(shí)現(xiàn)定時(shí)任務(wù)
這篇文章主要介紹了Spring boot基于ScheduledFuture實(shí)現(xiàn)定時(shí)任務(wù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06
java多線(xiàn)程入門(mén)知識(shí)及示例程序
java多線(xiàn)程入門(mén)知識(shí)及示例程序,大家參考使用吧2013-12-12
SpringBoot如何實(shí)現(xiàn)word文檔轉(zhuǎn)pdf
這篇文章主要介紹了SpringBoot如何實(shí)現(xiàn)word文檔轉(zhuǎn)pdf,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07

