SpringMVC JSON數(shù)據(jù)交互實(shí)現(xiàn)過(guò)程解析
為什么使用JSON進(jìn)行數(shù)據(jù)交互?
JSON數(shù)據(jù)格式比較簡(jiǎn)單、解析比較方便,在接口調(diào)用及HTML頁(yè)面Ajax調(diào)用時(shí)較常用。
JSON交互方式
請(qǐng)求是Key/Value,響應(yīng)是JSON(推薦使用)
請(qǐng)求是JSON,響應(yīng)是JSON
依賴包
<dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.9.8</version> </dependency>
測(cè)試
請(qǐng)求k/v,響應(yīng)json
jsp頁(yè)面
function responseKV(){ $.ajax({ type:"post", url:'${pageContext.request.contextPath }/responseKV', //輸入是key/value時(shí),默認(rèn)就指定好了contentType了,不需要再指定了 //contentType:'application/json;charset=utf-8', //data為key/value形式 data:'name=json測(cè)試&price=999', success:function(data){ alert(data); } }); }
Controller類(類上加響應(yīng)標(biāo)記:@ResponseBody)
// 輸入是key/value,輸出是json // @ResponseBody 將返回值轉(zhuǎn)成json串響應(yīng)給前臺(tái) @RequestMapping("/responseKV") @ResponseBody public Item responseKV(Item item) { return item; }
請(qǐng)求JSON,響應(yīng)JSON
jsp頁(yè)面
function requestJson(){ $.ajax({ type:"post", url:'${pageContext.request.contextPath }/requestJson', //輸入是json是 ,需要指定contentType為application/json contentType:'application/json;charset=utf-8', data:'{"name":"json測(cè)試","price":999}', success:function(data){ alert(data.name); } }); }
Controller類(請(qǐng)求參數(shù)上加:@RequestBody標(biāo)記;類上加@ResponseBody標(biāo)記)
@Controller public class JsonController { // 輸入是json,輸出是json // @RequestBody 將請(qǐng)求的json串轉(zhuǎn)成java對(duì)象 // @ResponseBody 將返回值轉(zhuǎn)成json串響應(yīng)給前臺(tái) @RequestMapping("/requestJson") @ResponseBody public Item requestJson(@RequestBody Item item) { return item; } }
報(bào)文頭
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot瘦身打包部署的實(shí)現(xiàn)
這篇文章主要介紹了SpringBoot瘦身打包部署的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04java獲取當(dāng)前時(shí)間和前一天日期(實(shí)現(xiàn)代碼)
java獲取當(dāng)前時(shí)間和前一天日期的實(shí)現(xiàn)代碼。需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2013-10-10通過(guò)實(shí)例了解JavaBean開(kāi)發(fā)及使用過(guò)程解析
這篇文章主要介紹了通過(guò)實(shí)例了解JavaBean開(kāi)發(fā)及使用過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08java 開(kāi)發(fā)使用字符串和數(shù)字的性能分析
這篇文章主要介紹了java 開(kāi)發(fā)使用字符串和數(shù)字的性能分析的相關(guān)資料,需要的朋友可以參考下2017-07-07詳解Java遞歸實(shí)現(xiàn)樹(shù)形結(jié)構(gòu)的兩種方式
在開(kāi)發(fā)的過(guò)程中,很多業(yè)務(wù)場(chǎng)景需要一個(gè)樹(shù)形結(jié)構(gòu)的結(jié)果集進(jìn)行前端展示,也可以理解為是一個(gè)無(wú)限父子結(jié)構(gòu),常見(jiàn)的有報(bào)表指標(biāo)結(jié)構(gòu)、菜單結(jié)構(gòu)等,這篇文章主要介紹了Java遞歸實(shí)現(xiàn)樹(shù)形結(jié)構(gòu)的兩種方式,需要的朋友可以參考下2022-10-10SpringAMQP消息隊(duì)列實(shí)戰(zhàn)教程
這篇文章主要介紹了SpringAMQP消息隊(duì)列的相關(guān)知識(shí),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2024-02-02httpclient connect連接請(qǐng)求方法源碼解讀
這篇文章主要為大家介紹了httpclient connect連接請(qǐng)求方法解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11java 集合并發(fā)操作出現(xiàn)的異常ConcurrentModificationException
Map在遍歷時(shí)候通常 現(xiàn)獲得其鍵值的集合Set,然后用迭代器Iterator來(lái)對(duì)Map進(jìn)行遍歷。2009-06-06