如何在 MySQL 列中保存 DATE
Posted
技术标签:
【中文标题】如何在 MySQL 列中保存 DATE【英文标题】:How to save DATE at the MySQL column 【发布时间】:2019-05-29 07:26:53 【问题描述】:我正在使用 Spring Boot、mysql、Hibernate 构建简单的 REST。 想使用 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 COLUMN
【问题讨论】:
您可以在 Java 中使用private Date created = new Date();
添加默认值,我不确定这是您要求的。
How can I use DB side default value while use Hibernate save?的可能重复
【参考方案1】:
使用 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 正是我所需要的以上是关于如何在 MySQL 列中保存 DATE的主要内容,如果未能解决你的问题,请参考以下文章
如何将约束添加到 MYSQL 中的列仅以保存已存在于同一表的另一列中的值? [复制]