SpringBoot 序列化与反序列化日期类型参数
简介
当使用 RequestBody 接收Json类型参数时,LocalDateTime序列化需要单独在字段配置。另外,接口返回的对象包含Date、LocalDateTime,也需要在字段配置@JsonFormat。
因此,最好的方式是全局配置,让开发人员无感地像普通参数那样使用,这是最方便的。
实现
下面这个方法可以直接用,处理了Date、LocalDate、LocalDateTime三大类型
@Configuration
public class JasonConf {@Bean@ConditionalOnMissingBean(ObjectMapper.class)public ObjectMapper getObjectMapper() {ObjectMapper objectMapper = new ObjectMapper();//Date类型序列化TimeZone timeZone = TimeZone.getTimeZone("Asia/Shanghai");SimpleDateFormat simpleDateFormat = new SimpleDateFormat(DatePattern.NORM_DATETIME_PATTERN);simpleDateFormat.setTimeZone(timeZone);objectMapper.setDateFormat(simpleDateFormat);//LocalDate、LocalDateTime序列化JavaTimeModule javaTimeModule = new JavaTimeModule();DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern(DatePattern.NORM_DATETIME_PATTERN);javaTimeModule.addSerializer(LocalDateTime.class, new LocalDateTimeSerializer(dateTimeFormatter));javaTimeModule.addDeserializer(LocalDateTime.class, new LocalDateTimeDeserializer(dateTimeFormatter));objectMapper.registerModule(javaTimeModule);return objectMapper;}
}
测试
定义个User实体类:
@Data
public class User {private String name;private Date createdOn;private LocalDate birth;private LocalDateTime modifiedOn;
}
写个接口测试:
@RequestMapping("/add.json")@ResponseBodypublic User add(@RequestBody User user){user.setCreatedOn(new Date());return user;}
使用Postman进行测试,结果符合要求
SpringBoot 序列化与反序列化日期类型参数相关推荐
- ASP.NET中JSON的序列化和反序列化
JSON是专门为浏览器中的网页上运行的JavaScript代码而设计的一种数据格式.在网站应用中使用JSON的场景越来越多,本文介绍ASP.NET中JSON的序列化和反序列化,主要对JSON的简单介绍 ...
- 一起谈.NET技术,ASP.NET 中JSON 的序列化和反序列化
JSON是专门为浏览器中的网页上运行的JavaScript代码而设计的一种数据格式.在网站应用中使用JSON的场景越来越多,本文介绍ASP.NET中JSON的序列化和反序列化,主要对JSON的简单介绍 ...
- php json字符串序列化,JSON序列化与反序列化实现方法(附代码)
这次给大家带来JSON序列化与反序列化实现方法(附代码),JSON序列化与反序列化实现的注意事项有哪些,下面就是实战案例,一起来看一下. 一.JSON简介 JSON(JavaScript Object ...
- SpringBoot的序列化和反序列化
序列化与反序列化 1.认识序列化与反序列化 Java序列化是指把Java对象转换为字节序列的过程,而Java反序列化是指把字节序列恢复为Java对象的过程. 2.为什么要实现对象的序列化和反序列化? ...
- .Net Core Json序列化和反序列化以及自定义JsonConverterT来转化特殊日期时间格式
System.Text.Json 命名空间提供用于序列化和反序列化 JavaScript 对象表示法 (JSON) 的功能. System.Text.Json 命名空间包含所有入口点和主要类型. Sy ...
- SpringBoot 自定义Kafka消息序列化和反序列化
1. 概述 Kafka传输自定义的DTO对象时,不能像平时一样使用StringSerializer和StringDeserializer.这种情况需要自己实现对应DTO的序列化器和反序列化器.假设现在 ...
- 使用HttpMessageConverter实现HTTP的序列化和反序列化
对象的序列化/反序列化大家应该都比较熟悉:序列化就是将object转化为可以传输的二进制,反序列化就是将二进制转化为程序内部的对象.序列化/反序列化主要体现在程序I/O这个过程中,包括网络I/O和磁盘 ...
- 一文读懂Json序列化与反序列化
一文读懂Json序列化与反序列化 一文读懂Json序列化与反序列化 #mermaid-svg-tVjnnlFu6ZBDpGOQ {font-family:"trebuchet ms" ...
- Java对象的序列化与反序列化
序列化与反序列化 序列化 (Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程.一般将一个对象存储至一个储存媒介,例如文件或是内存缓冲区等.在网络传输过程中,可以是字节或是 ...
最新文章
- 初级篇第六期:学习UITableView
- 微服务架构之外的选择——基于服务架构
- 成功解决 _mssql.c(568): fatal error C1083: 无法打开包括文件: “sqlfront.h”: No such file or directory
- Vim取消查找后的高亮提示,:nohl或者:noh什么的都不管用,来一个简单粗暴方法
- PHP的SOAP原理及实现
- java中的基本小程序_12个用Java编写基础小程序经典案例(收藏篇)
- 关于 flex 的资料
- 企业资源规划 ERP
- 华为耗资100亿元的研发基地着火了?
- html转义字符 放大镜,特殊符号
- js找出两个数组中的重复项
- js对象深浅拷贝,来,试试看!
- USB摄像头图片采集+QT显示(二)
- [论文阅读笔记40]recall与rank相结合的多视角中文过程术语标准化
- 网络编程基础 --> 网络通信机理、报文与协议、套接字通信预备
- 从头开始做一个智能家居设备:硬件准备
- python 下载 JPG 图片
- 多人协作git workflow规范
- 如何将SketchUp插件添加到菜单栏及工具条
- Java源码之HashMap
热门文章
- SAP HR 常用事务代码
- 2017年我国SAP行业三大利好
- NWBC连接配置及使用
- EKPO-PSTYP
- 【FI】-【AM】跨工厂/事业部/利润中心的固定资产调拨
- me21n增强BADI:ME_PROCESS_PO_CUST之process_account
- 高压线下,恶俗短视频为何仍在批量生产?
- c 传图片数据给matlab,c++ - 如何通过UDP将数据从C ++应用程序发送到Matlab并进行绘制 - 堆栈内存溢出...
- bp神经网络预测模型_基于BP神经网络模型的河南省严重精神障碍患者服药依从性影响因素分析...
- python sqlserver api连接池_非常老的话题 SQLSERVER连接池