[英]Set UpdatedTimeStamp in a particular TimeZone in Spring Boot Hibernate for Postgres
我有一个存储像这样的上次更新日期的实体
@Entity
@Table(name = "counter")
public class Count {
@Id
@Column(name = "uniq_id")
String uniqId;
@Column(name = "amount")
int amount;
@Column(name = "points")
double points;
@Column(name = "handshake")
boolean handshake;
@UpdateTimestamp
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "updated_date")
Date timestamp;
//getter setters
}
这部分
@UpdateTimestamp
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "updated_date")
Date timestamp;
意味着无论何时使用此实体, timestamp
都会自动更新并保存在数据库中。
现在我的问题是,如何在特定时区上自动设置此timestamp
? 我正在使用 Postgresql。 任何帮助,将不胜感激。
避免使用Date ,JPA 支持 java-8 日期类,所以使用OffsetDateTime来映射TIMESTAMP WITH TIME ZONE
@Column(name = "updated_date", columnDefinition = "TIMESTAMP WITH TIME ZONE")
private OffsetDateTime offsetDateTime;
对于TIMESTAMP WITHOUT TIME ZONE
您可以使用LocalDateTime
@Column(name = "updated_date", columnDefinition = "TIMESTAMP")
private LocalDateTime localDateTime;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.