私の顧客エンティティに、changedByUserIdフィールドを保存したいと思います。このフィールドを設定したいのは、顧客の他のフィールドの1つが実際に変更された場合のみです。常に設定すると、changedByUserIdフィールドを設定したため、EntityManagerにcustomerテーブルを更新させます。
@Entity
@Table....
public class Customer {
@Id
private Long cusID;
@Column
private String cusNAME;
@Column
private Date changed;
@Column
private Long changedByUserId;
@PreUpdate
private preUpdate() {
changed = new Date();
// cannot set changedbyUserId here because no entitymanager
// available where i can query the id
}
}
誰かがEntityManagerにchangedByUserIDフィールドの変更をチェックしないように指示する方法を知っていますか?