@JsonFormat & @DateTimeFormat

本文介绍了如何在SpringBoot项目中使用@JsonFormat和@DateTimeFormat注解处理后端时间格式化发送和前端接收,包括全局解决方案和示例代码。

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

@JsonFormat 理解: 后端的时间格式化 发送到 前端 比如数据查询出来时间戳 直接 转换成这个格式 然后丢给前端

使用: @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8")

@DateTimeFormat 理解: 接受前端的传参格式化 比如 前端 传递时间戳 后端映射成指定格式保存

使用: @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")

JAVA完整代码参考

import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;

    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
    private Date createTime;

LocalDateTime等jdk8的时间类也一样可以用以上这两个注解来解决,这种就是单一解决的方式

全局解决方式参考如下:

springboot默认的序列化跟反序列化是通过Jackson来做的,我们在项目中有时候会额外导入fastjson包(不整体排除的话,基本也不允许全局排除没必要去自己冒险)这种目的就是为了处理我们自己业务内的json操作,所以基本上springmvc的反序列化参数啥的就都还是走的jackson,那么针对Date类型跟Jdk8的LocalDateTime等的序列化跟反序列化解决方案参考如下

SpringBoot Jackson Date类型格式设置_得过且过的勇者y的博客-CSDN博客_jackson 时间格式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值