文章目录
- @JsonFormat (双端互传)
- @DateTimeFormat (前端传后端日期格式转化)
- 情况一 前端是时间组件 <el-date-picker 或其他
- 情况二 前端未设置组件
@JsonFormat (双端互传)
com.fasterxml.jackson.annotation.JsonFormat;
将字符串的时间转换成Date类型。此注解只能用于form表单请求和get请求
public class Sys{@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")private Date createTime;
}
@JsonFormat 默认的时区是 Greenwich Time,格林威治时间,而我们是在东八区。传递时间比数据库中的时间少八个小时。故需加上
timezone="GMT+8
@DateTimeFormat (前端传后端日期格式转化)
将字符串的时间转换成Date类型。此注解只能用于json请求。在Controller层入参处需要用@RequestBody
情况一 前端是时间组件 <el-date-picker 或其他
时间组件默认传递格式:2023-01-01 01:01:01 则后端不需要加 @DateTimeFormat 注释
情况二 前端未设置组件
时间格式是默认的 2023-07-01T00:00:00.000+0800
则返回后端会报错 JSON parse error: Cannot deserialize value of type
建议默认装上@JsonFormat
参考 @JsonFormat