SpringMVC中Json數據格式轉換
1 @RequestBody
作用:
@RequestBody注解用于讀取http請求的內容(字符串),通過springmvc提供的HttpMessageConverter接口將讀到的內容轉換為json、xml等格式的數據并綁定到controller方法的參數上。
List.action?id=1&name=zhangsan&age=12
本例子應用:
@RequestBody注解實現接收http請求的json數據,將json數據轉換為java對象
2 @ResponseBody
作用:
該注解用于將Controller的方法返回的對象,通過HttpMessageConverter接口轉換為指定格式的數據如:json,xml等,通過Response響應給客戶端
本例子應用:
@ResponseBody注解實現將controller方法返回對象轉換為json響應給客戶端
3 環(huán)境配置
3.1 jar包準備
Springmvc默認用MappingJacksonHttpMessageConverter對json數據進行轉換,需要加入jackson的包,如下:

3.2 springmvc.xml文件中的配置
1) 如果配置文件中配置過注解驅動(<mvc:annotation-driven/>), 則無需多余配置
2) 如果沒有配置注解驅動, 則需如下配置(不推薦使用這種方式)
<!--注解適配器 -->
<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>
4. Controller的編寫
@RequestMapping("/testJson.action")
@ResponseBody
public Items testJson (@RequestBody Items items) {
return items;
}
對應jsp頁面中js的編寫
function jsonTest () {
$.ajax({
type:"post",
url:"${pageContext.request.contextPath}/item/testJson.action",
contentType:"application/json;charset=utf-8",
data:'{"name":"測試商品","price":99.9}',
success:function (data) {
alert(data.name);
}
});
}
以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!
相關文章
使用spring框架ResponseEntity實現文件下載
這篇文章主要介紹了使用spring框架ResponseEntity實現文件下載,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-02-02
Java經典算法匯總之順序查找(Sequential Search)
Java查找算法之順序查找說明:順序查找適合于存儲結構為順序存儲或鏈接存儲的線性表。 下面我們來詳細說明下2016-04-04
SpringSecurity請求授權規(guī)則配置與注解詳解
這篇文章主要介紹了SpringSecurity請求授權規(guī)則配置與注解詳解,我們常使用@Secured與@PreAuthorize兩個注解在進入方法前進行角色、權限的控制,進入方法前數據的過濾@PreFilter注解偶爾會看到,需要的朋友可以參考下2023-12-12
使用lombok注解導致mybatis-plus TypeHandler失效的解決
這篇文章主要介紹了使用lombok注解導致mybatis-plus TypeHandler失效的解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-07-07
spring boot使用logback日志級別打印控制操作
這篇文章主要介紹了spring boot使用logback日志級別打印控制操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-03-03

