在表单提交时,在将行插入数据库时​​添加时间戳和当前值

时间:2017-10-07 20:29:53

标签: java mysql spring spring-boot

我要做的是,当提交数据库中的一行时,将记录一个包含当前时间戳的值。 我最初尝试将其添加到我的实体类中:

@Basic(optional = false)
@Column(name = "SubmitedTime", insertable = false, updatable = false)
@Temporal(TemporalType.TIMESTAMP)
private Date submitedTime;

但我得到一个例外,说提交的时间没有默认值。 我该如何实现这一目标? 我使用Spring启动和mysql作为数据库。

2 个答案:

答案 0 :(得分:0)

您可以使用Entity Listeners

@PrePersist
public void preSave() {
    submittedTime = new Date();
}

答案 1 :(得分:0)

通过执行以下操作,我在项目中做了类似的事情:

@CreatedDate
@Column(name = "created_date", nullable = false)
@JsonIgnore
private ZonedDateTime createdDate = ZonedDateTime.now();