我有一个带有字段的实体
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "edit_timestamp",
columnDefinition="TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP")
private Date editTimestamp;
@Version
@Column(name = "edit_count")
private short editCount;
private String text;
当我尝试使用Spring-Data-JPA进行更新时,我观察到 edit_count 已增加,但 edit_timestamp 仍然保持不变。如果我手动调用 SQL
UPDATE post SET TEXT='456' WHERE post_id=1;
edit_timestamp 已更新。如果我添加
@PreUpdate
protected void onUpdate() {
editTimestamp = new Date();
}
它没有问题。我的问题是为什么没有@PreUpdate,edit_timestamp 没有更新?