問題を正確に解決することはできませんでしたが、回避しました。
データベースにデフォルト値のnow()
を提供させる代わりに 、JPAで@PrePersist
を使用して表現しました :
@Column(name="created_at", nullable=false)
@Temporal(TemporalType.TIMESTAMP)
public Date createdAt;
@PrePersist
protected void onCreate() {
createdAt = new Date();
}
それはうまくいきます! この回答 からのインスピレーション 。データベースに適用されたデフォルト値でHibernateが更新されなかった理由はまだわかりません。値がまだnullであると考えて行き詰まりました。