从POST方法更新时,@ CreationTimestamp列设置为null

时间:2019-04-05 11:10:05

标签: hibernate spring-boot jpa

我正在尝试在数据库中设置一个字段以写入修改行的日期。为此,我使用的是Hibernate提供的注释。

当我通过POST方法创建行时,它工作正常。它用相同的值(显然)填充两列(创建和修改的列)。

当我更新实体(POST)时出现问题。结果,“ modified_date”列会更新日期,但“ created_date”设置为null。

这是我的EntityBase,由用户实体扩展

as.numeric

每当我发表文章时,似乎Hibernate在生成的查询中输入空值,这就是@Column中可空属性的原因

这是我的用户实体

@MappedSuperclass
public class EntityBase {

@JsonProperty("_version")
@Column(name="_version")
@Version
private Integer version = 0;

@Column(name= "CREATION_DATE", nullable = false)
@CreationTimestamp
private LocalDateTime createDateTime;

@Column(name= "UPDATED_TIME")
@UpdateTimestamp
private LocalDateTime updateDateTime;

~~ getters & setters ~~

我在做什么错?预先感谢!

1 个答案:

答案 0 :(得分:0)

您可以使用以下定义来避免该字段被更新:

@Column(name= "CREATION_DATE", nullable = false, updatable = false)