一、配置JSON转换器
1.使用阿里的fastjson,对应的jar包
<!--处理器适配器 -->
<mvc:annotation-driven>
<mvc:message-converters register-defaults="false">
<bean class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value> text/html; charset=UTF-8</value><!-- 避免IE出现下载JSON文件的情况 -->
<value> application/json; charset=UTF-8</value>
</list>
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
2.导入以下三个jackson jar包(推荐)
开启注解驱动即可
<mvc:annotation-driven/>
二、@RequestBody(接收http请求json数据)
@RequestBody注解用于读取http请求的内容(字符串),,一种是传json格式的数据过来,另一种就是在url的末尾传普通的key/value串过来,通过springmvc提供的HttpMessageConverter接口将读到的内容(json数据)转换为java对象并绑定到Controller方法的参数上
三、@ResponseBody(返回java对象转换为json)
@ResponseBody注解用于将Controller的方法返回的对象,通过springmvc提供的HttpMessageConverter接口转换为指定格式的数据如:json,xml等,通过Response响应给客户端
//测试请求的是json串(商品信息),输出json(商品信息)
//@RequestBody将请求的商品信息的json串转成itemsCustom对象
//@ResponseBody将itemsCustom对象转成json输出
@RequestMapping("/requestJson")
@ResponseBody //写在返回值类型前可以
public ItemsCustom requestJson(@RequestBody ItemsCustom itemsCustom) {
return itemsCustom; //由于@ResponseBody注解,将itemsCustom转成json格式返回
}