SpringMVC 通过 fastjson 使 Ajax 返回 Json 对象

本文详细介绍了在SpringMVC框架中配置JSON返回的步骤,包括使用@ResponseBody注解、添加fastjson依赖以及配置fastjson特性,确保前后端交互的高效与便捷。

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

SpringMVC 返回 Json 对象
web 开发中,通过 ajax 回调获取 Json 对象的需求是每一名 web 者不可绕开的话题。在 SpringMVC 中如何实现呢?话不多少,且看以下步骤。
1. Controller 中 action 方法上添加注解 @ResponseBody。
    @ResponseBody 将内容或对象作为 HTTP 响应正文返回,通过适当的HttpMessageConverter转换为指定格式后,写入到Response对象的body数据区。
2. 项目中添加 fastjson jar 包。
    fastjson 是阿里封装的一个Json处理工具包,包括“序列化”和“反序列化”两部分,效率高、使用简单是其最大的两个特点。
    (关于 fasthson 更多信息,可以上 GitHub 查找 https://github.com/alibaba/fastjson/wiki)
    如果您是 maven 项目,可通过以下方式配置 jar 包:

<dependency>
   <groupId>com.alibaba</groupId>
   <artifactId>fastjson</artifactId>
   <version>1.2.31</version>
</dependency>

3. SpringMVC 中添加 fastjson 配置。

<!-- 设置fastjson的特性 -->
<bean id="fastJsonConfig" class="com.alibaba.fastjson.support.config.FastJsonConfig">
   <property name="serializerFeatures">
      <array value-type="com.alibaba.fastjson.serializer.SerializerFeature">
         <!-- 消除对同一对象循环引用的问题,默认为false -->
         <value>DisableCircularReferenceDetect</value>
         <!-- 结果是否格式化,默认为false -->
         <value>PrettyFormat</value>
         <!-- 字符类型字段如果为null,输出为”“,而非null  -->
         <value>WriteNullStringAsEmpty</value>
      </array>
   </property>
</bean>
<bean id="jsonConverter" class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter4">
   <property name="supportedMediaTypes" value="application/json;charset=UTF-8" />
   <property name="fastJsonConfig" ref="fastJsonConfig"></property>
</bean>
<!-- 加载fastjson配置 -->
<mvc:annotation-driven>
   <mvc:message-converters>
   <ref bean="jsonConverter"/>
   </mvc:message-converters>
</mvc:annotation-driven>

通过以上三步基本就完成了返回 json 对象的配置,前端 ajax 请求和接受此处不再赘述。

转载于:https://my.oschina.net/u/2563695/blog/909424

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值