在休眠中格式化时间戳



我试图在每次创建或更新实体时保存时间戳。

@CreationTimestamp
@Column(name = "created_At")
private Date createdAt;
@UpdateTimestamp
@Column(name = "updated_at")
private Date updatedAt;

问题是这会以 unix 时间格式保存时间戳。我希望它以"yyyy-MM-dd HH:mm:ss"格式保存。

我尝试使用@PrePersist@PreUpdate注释执行此操作,但由于某种原因,在创建/更新实体时不会调用这些方法。

还有其他方法可以控制格式吗? 注意:我不确定它是否相关,但我使用的是 Spring 框架

您将数据存储在数据库中。数据库始终将日期字段存储为其内部格式,例如来自 EPOC 的毫秒或类似的东西。客户端有责任阅读它并以它想要的任何格式显示它。在 java 中读回日期字段后,您可以在显示日期之前以任何您想要的方式格式化日期。您使用的任何数据库查看器也是如此。您通常可以将其配置为以您想要的任何格式在数据库中显示日期字段,但在数据库内部,它仍将以数据库内部格式存储。

最新更新