gpt4 book ai didi

mysql - JPA 中的日期默认初始化

转载 作者:行者123 更新时间:2023-11-29 23:37:28 25 4
gpt4 key购买 nike

我正在使用 JPA,我想用当前时间戳初始化日期字段(如果该字段未明确设置为特定值)我不想在DB层这样做,因为我使用的是MySQL,字段是DATETIME,并且我们使用MySQL 5.6.5之前的版本。这是一个代码片段:

@Entity
@Table(name = "comentariu")
public class Comentariu implements Serializable{
...
@Column(name = "dataCreare")
@Temporal(TemporalType.TIMESTAMP)
private Date dataCreare = new Date();
...
public Date getDataCreare() {
return dataCreare;
}

public void setDataCreare(Date dataCreare) {
this.dataCreare = dataCreare;
}
}

鼓励以这种方式初始化here

你发现这有什么问题吗?我很担心,因为当我在初始化语句上设置断点时,我注意到代码被执行了几次,可能是因为 JPA 'engine'

最佳答案

除了在引用的帖子中清楚描述的急切和惰性初始化的技术方面之外,选择还取决于您的要求以及此类时间戳必须包含哪些信息,即

  • 实体实例初始化时间(使用属性)
  • 与某些外部对象相关的时间值(使用构造函数或 setter )

从代码片段中我可以看到 dataCreare 在创建对象期间被初始化。如果是这样,为什么你还需要 setter ?两次重新初始化同一属性会是不必要的努力,不是吗?

关于mysql - JPA 中的日期默认初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26325031/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com