news 2026/6/26 2:46:49

Spring MVC 将 Jackson 序列化器替换为 FastJson2 序列化器

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Spring MVC 将 Jackson 序列化器替换为 FastJson2 序列化器

项目版本与运行环境

  • JDK 版本:17
  • 操作系统:Windows 11
  • SpringBoot 版本:3.5.14

引入依赖

<!-- FastJson2 核心 --> <dependency> <groupId>com.alibaba.fastjson2</groupId> <artifactId>fastjson2</artifactId> <version>2.0.61</version> </dependency> <!-- FastJson2 - Spring 集成 --> <dependency> <groupId>com.alibaba.fastjson2</groupId> <artifactId>fastjson2-extension-spring6</artifactId> <version>2.0.61</version> </dependency>

编写配置

/** * Spring MVC 配置类 * */@ConfigurationpublicclassSpringMvcConfigimplementsWebMvcConfigurer{/** * 自定义消息转换器 * * @param converters 消息转换器列表 */@OverridepublicvoidconfigureMessageConverters(@NonNullList<HttpMessageConverter<?>>converters){// 将 FastJson2 放置在列表第一位converters.add(0,createFastJsonConverter());}publicstaticFastJsonHttpMessageConvertercreateFastJsonConverter(){FastJsonHttpMessageConverterconverter=newFastJsonHttpMessageConverter();FastJsonConfigconfig=newFastJsonConfig();config.setCharset(StandardCharsets.UTF_8);// 序列化配置config.setWriterFeatures(JSONWriter.Feature.WriteLongAsString,// Long → String 防精度丢失JSONWriter.Feature.WriteMapNullValue// 输出 null 字段(按需));// 反序列化配置config.setReaderFeatures(// 反序列化时忽略未知字段,避免报错);converter.setFastJsonConfig(config);// 设置默认字符集为 UTF-8,避免中文乱码converter.setDefaultCharset(StandardCharsets.UTF_8);// 限定转换器仅处理 application/json 媒体类型converter.setSupportedMediaTypes(Collections.singletonList(MediaType.APPLICATION_JSON));returnconverter;}}

测试配置是否生效

编写测试类

@GetMapping("/test/json")publicMap<String,Object>testJson(){Map<String,Object>result=newHashMap<>();result.put("id",9007199254740993L);// 超出 JS 安全整数范围result.put("name",null);// null 字段result.put("time",LocalDateTime.now());returnresult;}

Fastjson2 默认的日期序列化格式与 Jackson 不同。返回一个包含 LocalDateTime / Date 的对象,对比格式:
Jackson: 默认 ISO-8601 (“2026-06-25T20:09:00”) 或时间戳
Fastjson2: 默认 “yyyy-MM-dd HH:mm:ss” 格式

输出信息为:

{"id":"9007199254740993","name":null,"time":"2026-06-25 20:15:33"}

由输出信息可看出,已使用 FastJson2 序列化器。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/26 2:41:41

几何曲率流线性隐式离散化:对偶公式与能量稳定方案详解

1. 从“流动的几何”到“稳定的计算”&#xff1a;一个核心问题的两面 在计算机图形学、物理仿真和几何处理领域&#xff0c;我们常常需要处理形状的演化。想象一下&#xff0c;一滴水珠在表面张力作用下&#xff0c;会自然地趋向于变成一个完美的球体&#xff0c;以最小化其表…

作者头像 李华
网站建设 2026/6/26 2:41:06

工业级许可证管理器设计:从安全校验到全生命周期管理

1. 项目概述&#xff1a;从“许可”到“管理”&#xff0c;一个被低估的核心系统在软件、硬件乃至数字服务领域&#xff0c;我们常常听到“许可证”这个词。无论是你电脑上的专业设计软件&#xff0c;还是公司服务器里跑的企业级数据库&#xff0c;甚至是云端按需调用的API服务…

作者头像 李华
网站建设 2026/6/26 2:34:44

最新用 AI 学量化表达,别脱离 Python 和 API 流程

当手工交易规则开始转向量化表达时&#xff0c;AI 很容易成为学习者的第一个求助对象。它能解释陌生概念&#xff0c;也能帮助改写含糊表述&#xff0c;但真正重要的是&#xff0c;读者要知道自己希望它帮助哪一个环节变清楚。代码要回到规则本身在理解 Python 与 API 的连接方…

作者头像 李华
网站建设 2026/6/26 2:31:40

最新量化开发提效,AI 先检查代码逻辑和流程缺口

已有量化经验者用 AI 提升效率时&#xff0c;不一定需要更复杂的提示&#xff0c;而是需要更清楚的推进顺序。概念、代码、回测、模拟这些环节如果互相跳跃&#xff0c;问题就很难定位。按顺序推进&#xff0c;AI 的检查也会更有上下文。代码要回到规则本身概念阶段要先把想法和…

作者头像 李华
网站建设 2026/6/26 2:26:06

人流后可以吃哪些水果?饮食搭配与食用禁忌指南

人流后身体气血亏虚、免疫力偏弱&#xff0c;合理食用水果能补充维生素、矿物质与膳食纤维&#xff0c;辅助身体恢复。但水果品类、食用方式不当&#xff0c;也容易刺激肠胃、影响恶露排出。结合小月子养护原则&#xff0c;搭配 PWRH 【产美盾】同步调理&#xff0c;分清适宜水…

作者头像 李华