Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 插入和更新时使用utc时间自动更新上次更新的字段_Java_Spring_Spring Data Jpa - Fatal编程技术网

Java 插入和更新时使用utc时间自动更新上次更新的字段

Java 插入和更新时使用utc时间自动更新上次更新的字段,java,spring,spring-data-jpa,Java,Spring,Spring Data Jpa,假设我有以下DB表: CREATE TABLE REQUEST ( ID BIGINT AUTO_INCREMENT PRIMARY KEY, LABEL NVARCHAR(32) NOT NULL, STATUS NVARCHAR(10) NOT NULL, ERROR_MESSAGE NVARCHAR(200), LAST_UPDATED DATETIME

假设我有以下DB表:

CREATE TABLE REQUEST
(

    ID            BIGINT AUTO_INCREMENT PRIMARY KEY,
    LABEL         NVARCHAR(32)          NOT NULL,
    STATUS        NVARCHAR(10)          NOT NULL,
    ERROR_MESSAGE NVARCHAR(200),
    LAST_UPDATED  DATETIME              NOT NULL
);
和JPA实体类:

@Entity
@Table(name = "REQUEST")
public class Request implements Serializable {

    @Id
    @Column(name = "ID")
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private long id;

    @Column(name = "LABEL")
    private String label;

    @Column(name = "STATUS")
    @Enumerated(EnumType.STRING)
    private Status status;

    @Column(name = "ERROR_MESSAGE")
    private String errorMessage;

    @Column(name = "LAST_UPDATED")
    private LocalDateTime lastUpdated;

}
是否有一种方法可以使用Spring JPA在每次插入或更新行时自动将
lastUpdated
字段更新为UTC时间戳,而无需为每次更新使用setter:

entity.setLastUpdated(nowTimeUTC())
repo.save(entity)
使用

设置您的时区

@LastModifiedDate
@Column(name = "LAST_UPDATED")
private LocalDateTime lastUpdated;