spring?boot前后端交互之?dāng)?shù)據(jù)格式轉(zhuǎn)換問(wèn)題
在前后端分離開發(fā)的項(xiàng)目種,前端獲取數(shù)據(jù)的方式基本都是通過(guò)Ajax
。請(qǐng)求方法也有所不同,常見的有POST,GET,PUT,DELETE
等。甚至連請(qǐng)求的數(shù)據(jù)類型都不一樣,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,"賬戶已存在,請(qǐng)重新設(shè)置!"); } } System.out.println(userInfo.toString()); }
接收json數(shù)據(jù)的兩個(gè)關(guān)鍵點(diǎn):
- json類型聲明
produces = "application/json;charset=UTF-8"
@RequestMapping接口處聲明傳輸類型未json。
- @RequestBody聲明Java Bean
json數(shù)據(jù)必須用對(duì)象接收,且必須用@RequestBody聲明。
x-www-form-urlencodeed表單數(shù)據(jù)
表單數(shù)據(jù)有兩種接收類型:
- @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)方法,在日常的開發(fā)工作中,我們時(shí)常會(huì)遇到導(dǎo)出Word文檔報(bào)表的需求,比如公司的財(cái)務(wù)報(bào)表、醫(yī)院的患者統(tǒng)計(jì)報(bào)表、電商平臺(tái)的銷售報(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-08Java內(nèi)存區(qū)域與內(nèi)存溢出異常詳解
這篇文章主要介紹了Java內(nèi)存區(qū)域與內(nèi)存溢出異常詳解的相關(guān)資料,需要的朋友可以參考下2017-03-03mybatis連接數(shù)據(jù)庫(kù)實(shí)現(xiàn)雙表查詢
本文主要介紹了mybatis連接數(shù)據(jù)庫(kù)實(shí)現(xiàn)雙表查詢,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-09-09Spring 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-06SpringBoot如何實(shí)現(xiàn)word文檔轉(zhuǎn)pdf
這篇文章主要介紹了SpringBoot如何實(shí)現(xiàn)word文檔轉(zhuǎn)pdf,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07