日期以不同的格式存储

时间:2018-05-30 16:29:12

标签: date spring-boot jackson2

我的这个日期"2018-05-30T16:19:58.016Z"来自我的Angular应用。 在Spring中,字段date如下:

@JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'")
private Date date;

日期存储得很好,但格式为YYYY-MM-ddenter image description here

有什么我想念的吗?

2 个答案:

答案 0 :(得分:1)

您可能必须指定发送到存储的日期格式,因为@JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'")仅指定用于将日期解析为Date对象的日期格式。即使您的日期包含所有秒和时区信息,默认日期toString()仍然是

  

以日期转义格式yyyy-mm-dd格式化日期。

根据Java 8文档。因此,如果您正在使用它,它很可能会丢弃所有有关转换的额外信息。

您可以查看此Convert java.util.Date to String,了解有关如何将日期格式化为字符串的信息。

答案 1 :(得分:1)

MySql date类型无法保存带有时间戳的数据。它必须是datetime才能包含带有时间戳数据的日期时间。