如何在Spring Data Rest中为各种方法添加字段默认值?
问题描述:
我想2日期字段添加到我的实体如何在Spring Data Rest中为各种方法添加字段默认值?
- creationDate
- lastModificationDate
我怎么可以在Spring数据REST为它们定义的默认值,这样creationDate得到它的默认值(当前日期)当我创建实体,lastModificationDate获取它的值作为该实体的每个放置请求的当前日期?
答
尝试添加到您的模型。
@PrePersist
void onCreate() {
this.setCreationDate(new Timestamp((new Date()).getTime()));
}
@PreUpdate
void onPersist() {
this.setLastModificationDate(new Timestamp((new Date()).getTime()));
}
答
您可以定义监听器:
public class EntityListener {
@PrePersist
public void beforeSave(Entity entity) {
entity.setCreationDate(LocalDateTime.now());
entity.setLastModificationDate(LocalDateTime.now());
}
@PreUpdate
public void beforeUpdate(Entity entity) {
entity.setLastModificationDate(LocalDateTime.now());
}
}
任何理由不委托给你的数据库? –
我猜不行,但如果可能的话,这样我就可以把所有的逻辑放在一个地方 – Carmine