SpringMVC之JSON数据交互

本文详细介绍如何在SpringMVC中配置JSON转换器,包括使用阿里fastjson和Jackson库进行JSON数据的序列化和反序列化。同时,解析了@RequestBody和@ResponseBody注解在处理HTTP请求和响应中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、配置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格式返回
}

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值