Nie rozwiązałem dokładnie problemu, ale rozwiązałem problem.
Zamiast tego, aby baza danych dostarczała domyślną wartość now()
, wyraziłem to w JPA za pomocą @PrePersist
:
@Column(name="created_at", nullable=false)
@Temporal(TemporalType.TIMESTAMP)
public Date createdAt;
@PrePersist
protected void onCreate() {
createdAt = new Date();
}
To działa dobrze! Inspiracja zaczerpnięta z tej odpowiedzi .Wciąż nie jestem pewien, dlaczego Hibernate nie został zaktualizowany o wartość domyślną, która została zastosowana w bazie danych. Utknął, myśląc, że wartość nadal jest zerowa.