Я создаю простой REST с Spring Boot, MySQL, Hibernate. Хотите сохранить текущую дату (сгенерированную автоматически) с помощью Hibernate, но каждый раз, когда я проверяю ее в PostMan, я получаю Null
@Entity
@Table (name = "purchase")
public class Purchase {
@Id
@Column(name = "id")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Column(name = "name")
private String name;
@Temporal(TemporalType.DATE)
@Column(name = "createat")
private Date created;}
CREATE TABLE `purchase`.`purchase` (
`id` INT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(45) NOT NULL,
`createat` DATE,
PRIMARY KEY (`id`));
Мне нужно сохранить текущую дату в моем столбце createat
Возможный дубликат Как я могу использовать значение по умолчанию на стороне БД при сохранении в спящем режиме?
Используя Hibernate, вы можете просто использовать @CreationTimestamp для вставки даты по умолчанию.
@CreationTimestamp
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "create_date")
private Date createDate;
и @UpdateTimestamp для обновления значения при необходимости.
@UpdateTimestamp
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "modify_date")
private Date modifyDate;
Большое спасибо, @CreationTimestamp был именно тем, что мне было нужно.
Вы можете добавить значение по умолчанию в Java с помощью
private Date created = new Date();
, я не уверен, что это то, о чем вы просили.