3

新しいレコードを作成するときにタイムスタンプを自動生成し、レコードを更新するときに変更されたタイムスタンプを自動生成する必要があります。

誰かが私にこれを実装する方法を教えてもらえますか?私はopenJPAを使用しています。

前もって感謝します。

4

2 に答える 2

4

次のコードを使用できます。

@Column
@Temporal(TemporalType.TIMESTAMP)
private Date creationDate;

@Column
@Temporal(TemporalType.TIMESTAMP)
private Date lastModificationDate;

// getters, setters

@PrePersist
void updateDates() {
  if (creationDate == null) {
    creationDate = new Date();
  }
  lastModificationDate = new Date();
}
于 2009-07-28T06:45:48.737 に答える
2

最も簡単なのは@Versionアノテーションを使用することです(ここにドキュメントがあります)

エンティティに以下を追加するだけです。

@Version
private java.sql.Timestamp myTimestamp;

/// normal getters & setters here

そしてそれは自動的にそれを行います

于 2009-07-28T05:47:37.093 に答える