溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Springmvc ResponseBody實(shí)現(xiàn)響應(yīng)json數(shù)據(jù)

發(fā)布時(shí)間:2020-10-27 14:26:15 來(lái)源:億速云 閱讀:168 作者:Leah 欄目:開(kāi)發(fā)技術(shù)

Springmvc ResponseBody實(shí)現(xiàn)響應(yīng)json數(shù)據(jù)?針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。

示例

需求:使用@ResponseBody 注解實(shí)現(xiàn)將 controller 方法返回對(duì)象轉(zhuǎn)換為 json 響應(yīng)給客戶(hù)端。

前置知識(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>

關(guān)于Springmvc ResponseBody實(shí)現(xiàn)響應(yīng)json數(shù)據(jù)問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI