在Hibernate中进行插入/更新时如何使用Oracle Timestamp?

时间:2016-03-07 19:55:23

标签: java oracle hibernate

@Entity
@Table(name = "SomeTable")
public class SomeEntity implements Serializable {
  @Column(name = "MODIFIED")
  private Timestamp modifiedDt;
}

如果有插入/更新操作,我应该如何指示“modifiedDt”使用oracle时间戳?

如果没有触发器或类似的事情在数据库端进行表格。

我试过下面但没有运气,

@Column(name = "TS_MODIFIED", columnDefinition = "TIMESTAMP ON UPDATE CURRENT TIMESTAMP")

2 个答案:

答案 0 :(得分:0)

您应该能够定义列以在更新行时将值更新为当前时间戳,如下所示:

CREATE TABLE SomeTable( MODIFIED TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP );

For more information see the Oracle docs here

答案 1 :(得分:0)

使用实体侦听器。请参阅Hibernate手册chapter 6, "Entity listeners and callback methods"

在您的情况下,您可能希望应用并实施sentence <- c("case sweden", "meeting minutes ht board meeting st march now also attachment added agenda today s board meeting", "draft meeting minutes board meeting final meeting minutes ht board meeting rd april") sentence <- cbind(sentence) word_table <- do.call(rbind, strsplit(as.character(sentence), " ")) test <- cbind(sentence, word_table) @PrePersist回调。有点像...

@PreUpdate