Spring?MVC中JSON數(shù)據(jù)處理方式實(shí)戰(zhàn)案例
添加json依賴
<!--spring-json依賴--> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.9.0</version> </dependency>
注解
@RequestBody:作用是接收前端ajax傳遞給后端的json字符串,并將json格式的數(shù)據(jù)轉(zhuǎn)為java對(duì)象
@ResponseBody:作用是將java對(duì)象轉(zhuǎn)為json格式的數(shù)據(jù)傳遞給前臺(tái)ajax
案例
編寫controller
@Controller @RequestMapping("/account") public class AccountController { @PostMapping("/findAccount12") @ResponseBody public JsonStatus findAccount12(@RequestBody Account account) { //Map<String ,Object> map = new HashMap<>(); //map.put("status",200); //map.put("msg",account); JsonStatus jsonStatus = new JsonStatus(); try { //System.out.println(1/0); jsonStatus.setStatus(200); jsonStatus.setMsg(account); } catch (Exception e) { e.printStackTrace(); jsonStatus.setStatus(500); jsonStatus.setMsg("查詢錯(cuò)誤!!!"); } return jsonStatus; } }
添加實(shí)體類:
/* * Copyright (c) 2020, 2024, All rights reserved. * */ package com.by.pojo; /** * <p>Project: SpringMVC - JsonStatus</p> * <p>Powered by scl On 2024-01-09 17:03:33</p> * <p>描述:<p> * * @author 孫臣龍 [1846080280@qq.com] * @version 1.0 * @since 17 */ public class JsonStatus { private Integer status; private Object msg; public Integer getStatus() { return status; } public void setStatus(Integer status) { this.status = status; } public Object getMsg() { return msg; } public void setMsg(Object msg) { this.msg = msg; } }
在index.jsp里面定義ajax請(qǐng)求
添加按鈕
<input type="button" value="測(cè)試ajax請(qǐng)求json和響應(yīng)json" id="testJson"/>
引入js庫(kù)文件
<script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>
編寫ajax代碼
<script type="text/javascript"> $(function(){ $("#testJson").click(function(){ $.ajax({ type:"post", url:"/account/saveAccount2", contentType:"application/json;charset=UTF-8", data:'{"id":1,"name":"張二狗","money":999.0}', success:function(data){ if(data.status == 200){ alert(data.msg.name); alert(data.msg.money); } } }) }); }) </script>
結(jié)果展示:
總結(jié)
到此這篇關(guān)于Spring MVC中JSON數(shù)據(jù)處理方式的文章就介紹到這了,更多相關(guān)SpringMVC中JSON數(shù)據(jù)處理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot實(shí)現(xiàn)OneDrive文件上傳的詳細(xì)步驟
這篇文章主要介紹了SpringBoot實(shí)現(xiàn)OneDrive文件上傳的詳細(xì)步驟,文中通過代碼示例和圖文講解的非常詳細(xì),對(duì)大家實(shí)現(xiàn)OneDrive文件上傳有一定的幫助,需要的朋友可以參考下2024-02-02使用Spring AOP做接口權(quán)限校驗(yàn)和日志記錄
本文介紹了面向切面編程(AOP)的基本概念、應(yīng)用場(chǎng)景及其在Spring中的實(shí)現(xiàn)原理,通過AOP,可以方便地在不修改原有代碼的情況下,實(shí)現(xiàn)日志記錄、權(quán)限校驗(yàn)等功能,以學(xué)生身份證號(hào)查詢接口為例,展示了如何定義權(quán)限注解、切面類以及權(quán)限驗(yàn)證服務(wù),感興趣的朋友一起看看吧2025-01-01Java servlet、filter、listener、interceptor之間的區(qū)別和聯(lián)系
這篇文章主要介紹了Java servlet、filter、listener、interceptor之間的區(qū)別和聯(lián)系的相關(guān)資料,需要的朋友可以參考下2016-11-11SpringBoot父子線程數(shù)據(jù)傳遞的五種方案介紹
在實(shí)際開發(fā)過程中我們需要父子之間傳遞一些數(shù)據(jù),比如用戶信息等。該文章從5種解決方案解決父子之間數(shù)據(jù)傳遞困擾,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2022-09-09java配置數(shù)據(jù)庫(kù)連接池的方法步驟
java配置數(shù)據(jù)庫(kù)連接池的方法步驟,需要的朋友可以參考一下2013-05-05淺談java中的一維數(shù)組、二維數(shù)組、三維數(shù)組、多維數(shù)組
下面小編就為大家?guī)硪黄獪\談java中的一維數(shù)組、二維數(shù)組、三維數(shù)組、多維數(shù)組。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-05-05springboot中用fastjson處理返回值為null的屬性值
在本篇文章里小編給大家整理的是一篇關(guān)于springboot中用fastjson處理返回值問題詳解內(nèi)容,需要的朋友們參考下。2020-03-03Java如果在try里面執(zhí)行return還會(huì)不會(huì)執(zhí)行finally
這篇文章主要介紹了Java如果在try里面執(zhí)行return,那么還會(huì)不會(huì)執(zhí)行finally,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01