gpt4 book ai didi

java - 如何在 Spring JPA 中为审计字段 @CreatedDate、@LastModifiedDate 保存 UTC 格式的时间戳

转载 作者:行者123 更新时间:2023-12-02 19:41:27 24 4
gpt4 key购买 nike

这是我的具有审计字段的实体的基类。对于@CreatedDate、@LastModifiedDate 字段,默认情况下它正在节省我的系统时间。我的要求是以 UTC 格式保存时间戳。

有没有人能解决这个问题?

import java.time.LocalDateTime;

import javax.persistence.Column;
import javax.persistence.EntityListeners;
import javax.persistence.MappedSuperclass;

import org.springframework.data.annotation.CreatedBy;
import org.springframework.data.annotation.CreatedDate;
import org.springframework.data.annotation.LastModifiedBy;
import org.springframework.data.annotation.LastModifiedDate;
import org.springframework.data.jpa.domain.support.AuditingEntityListener;

import lombok.Data;


@MappedSuperclass
@Data
@EntityListeners(AuditingEntityListener.class)
public abstract class BaseEntity {

@LastModifiedDate
@Column(name="last_modified_datetime")
private LocalDateTime lastModifiedDateTime;

@CreatedDate
@Column(name="created_datetime")
private LocalDateTime createdDateTime;

}

最佳答案

这是时区的问题。将此代码用于 spring boot。

@PostConstruct
public void setTimeZone() {
TimeZone.setDefault(TimeZone.getTimeZone("Etc/UTC"));
}

关于java - 如何在 Spring JPA 中为审计字段 @CreatedDate、@LastModifiedDate 保存 UTC 格式的时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60073200/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com