我正在處理應用程序,它具有一個名爲My.java的實體,它從具有稱爲編輯的字段的另一個實體擴展。 此字段將使用當前時間戳更新,每次更新是否有可能更新實體與外面的調用者被調用jpa
我正在使用單表繼承策略。
我使用jpa/eclipse鏈接作爲持久性提供者。
編輯的字段正在使用當前時間戳進行更新,即使在調用setter方法的情況下,我的java代碼中也沒有其他引用更改此編輯字段的值。
在調試時,我可以看到UPDATE QL語句,用於編輯的字段更新。
我真的想知道爲什麼/它是如何更新值,它可能與出二傳手調用?
這裏是映射的超類:
@MappedSuperclass
public abstract class SuperEntity implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1125783654888232605L;
/**
* The time the entry was created
*/
@Column(name = "CREATED")
private Timestamp created;
/**
* The date the entry was edited
*/
@Column(name = "EDITED")
@Version
private Timestamp edited;
它可以使用註釋克服它很容易。實體中的「編輯」字段是否有註釋?例如'@ UpdateTimestamp'。或者在實體中是否有任何方法具有諸如'@ PrePersist'之類的註釋?發佈你的實體類將有所幫助。 –
已發佈java類 –