Springmvc ResponseBody響應(yīng)json數(shù)據(jù)實(shí)現(xiàn)過程
該注解用于將 Controller 的方法返回的對(duì)象,通過 HttpMessageConverter 接口轉(zhuǎn)換為指定格式的數(shù)據(jù)如:json,xml 等,通過 Response 響應(yīng)給客戶端
示例
需求:使用@ResponseBody 注解實(shí)現(xiàn)將 controller 方法返回對(duì)象轉(zhuǎn)換為 json 響應(yīng)給客戶端。
前置知識(shí)點(diǎn):Springmvc 默認(rèn)用 MappingJacksonHttpMessageConverter 對(duì)json數(shù)據(jù)進(jìn)行轉(zhuǎn)換,需要加入jackson 的包。
注:2.7.0以下的版本用不了
jsp代碼
<!-- 測(cè)試異步請(qǐng)求 --> <input type="button" value="測(cè)試ajax請(qǐng)求json和響應(yīng)json" id="testJson"/> <script type="text/javascript"src="${pageContext.request.contextPath}/js/jquery.min.js"></script> <script type="text/javascript"> $(function(){ $("#testJson").click(function(){ $.ajax({ type:"post", url:"${pageContext.request.contextPath}/testResponseJson", contentType:"application/json;charset=utf-8", data:JSON.stringify({"id":1,"name":"test","money":999.0}), dataType:"json", success:function(data){ alert(data); } }); }); }) </script>
控制器代碼
/** * 響應(yīng) json 數(shù)據(jù)的控制器 * @author 黑馬程序員 * @Company http://www.ithiema.com * @Version 1.0 */ @Controller("jsonController") public class JsonController { /** * 測(cè)試響應(yīng) json 數(shù)據(jù) */ @RequestMapping("/testResponseJson") public @ResponseBody Account testResponseJson(@RequestBody Account account) { System.out.println("異步請(qǐng)求:"+account); return account; } }
配置json轉(zhuǎn)換器
如果不使用注解驅(qū)動(dòng)<mvc:annotation-driven />,就需要給處理器適配器配置json轉(zhuǎn)換器
在springmvc.xml配置文件中,給處理器適配器加入json轉(zhuǎn)換器:
<!--處理器適配器 --> <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"> <property name="messageConverters"> <list> <bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"></bean> </list> </property> </bean>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- SpringMVC集成Web與MVC執(zhí)行流程和數(shù)據(jù)響應(yīng)及交互相關(guān)介紹全面總結(jié)
- SpringMvc請(qǐng)求處理參數(shù)?和?響應(yīng)數(shù)據(jù)處理的示例詳解
- SpringMVC數(shù)據(jù)頁響應(yīng)ModelAndView實(shí)現(xiàn)頁面跳轉(zhuǎn)
- Java SpringMVC數(shù)據(jù)響應(yīng)超詳細(xì)講解
- SpringMVC中Controller類數(shù)據(jù)響應(yīng)的方法
- SpringMvc響應(yīng)數(shù)據(jù)及結(jié)果視圖實(shí)現(xiàn)代碼
- SpringMVC接收與響應(yīng)json數(shù)據(jù)的幾種方式
- SpringMVC數(shù)據(jù)響應(yīng)詳細(xì)介紹
相關(guān)文章
Java創(chuàng)建,編輯與刪除Excel迷你圖表的實(shí)現(xiàn)方法
迷你圖是Excel工作表單元格中表示數(shù)據(jù)的微型圖表。本文將通過Java代碼示例介紹如何在Excel中創(chuàng)建迷你圖表,以及編輯和刪除表格中的迷你圖表,需要的可以參考一下2022-05-05Java 多線程并發(fā)編程_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
這篇文章主要介紹了Java 多線程并發(fā)編程的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-05-05使用Java創(chuàng)建數(shù)據(jù)透視表并導(dǎo)出為PDF的方法
數(shù)據(jù)透視分析是一種強(qiáng)大的工具,可以幫助我們從大量數(shù)據(jù)中提取有用信息并進(jìn)行深入分析,本文將介紹如何使用Java來構(gòu)建PivotTable以及實(shí)現(xiàn)數(shù)據(jù)透視分析,并將其導(dǎo)出為PDF2023-10-10Maven及Springboot配置JDK版本,編碼,源碼打包等方式
這篇文章主要介紹了Maven及Springboot配置JDK版本,編碼,源碼打包等方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-12-12java?SpringBoot?分布式事務(wù)的解決方案(JTA+Atomic+多數(shù)據(jù)源)
這篇文章主要介紹了java?SpringBoot?分布式事務(wù)的解決方案(JTA+Atomic+多數(shù)據(jù)源),文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下2022-08-08Spring-AOP @AspectJ切點(diǎn)函數(shù)之@annotation()用法
這篇文章主要介紹了Spring-AOP @AspectJ切點(diǎn)函數(shù)之@annotation()用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-07-07詳解Spring MVC3返回JSON數(shù)據(jù)中文亂碼問題解決
本篇文章主要介紹了Spring MVC3返回JSON數(shù)據(jù)中文亂碼問題解決,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-01-01java實(shí)現(xiàn)獲取網(wǎng)站的keywords,description
這篇文章主要介紹了java實(shí)現(xiàn)獲取網(wǎng)站的keywords,description的相關(guān)資料,需要的朋友可以參考下2015-03-03