@JsonFormat和@DateTimeFormat

JsonFormatDateTimeFormat 是两个不同的注解,它们用于不同的场景。

JsonFormat 是 Jackson 库中的注解,它用于指定 Java 对象在序列化或反序列化为/从 JSON 时的格式。

DateTimeFormat 是 Joda-Time 库中的注解,它用于指定日期和时间字段的格式。

因此,如果你使用 Jackson 库处理 JSON 数据,那么你应该使用 JsonFormat 注解;如果你使用 Joda-Time 库处理日期和时间,那么你应该使用 DateTimeFormat 注解。

 

一般都是使用@DateTimeFormat把传给后台的时间字符串转成Date,使用@JsonFormat把后台传出的Date转成时间字符串,但是@DateTimeFormat只会在类似@RequestParam的请求参数上生效,如果@DateTimeFormat放到@RequestBody下是无效的。

在@RequestBody中则可以使用@JsonFormat把传给后台的时间字符串转成Date,也就是说@JsonFormat其实既可以把传给后台的时间字符串转成Date也可以把后台传出的Date转成时间字符串。

前端get请求如下传参,后端写如下注解才能接收到参数,不如@JsonFormat方便

?date=2021-11-11 23:23:23
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")@RequestParam LocalDateTime date
posted @   陈扬天  阅读(562)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
历史上的今天:
2021-02-11 hbuilderx创建vue-element-ui项目
点击右上角即可分享
微信分享提示