java@version注释在jpa/eclipselink中工作不正常
我有一个基本的实体类
其中一个字段(时间戳)具有@version属性,因此Jpa将自动增加该值
但是,有时时间戳值没有得到更新,编辑的日期小于创建的日期,但从理论上讲,这种情况永远不会发生
我没有以编程方式设置已编辑的值
这是我的实体类:
public class BaseEntity implements Serializable {
@Column(name = "CREATED")
private Timestamp created;
@Column(name = "EDITED")
@Version
private Timestamp edited;
// other fields, getters and setters
}
我已经阅读了很多关于@version注释的文章,但是我不明白为什么这个值不会更新,这背后的原因是什么
如果有人帮我,那就太好了
谢谢
# 1 楼答案
以下是一些基本准则:
javax.persistence.Version
李>obj = entityManager.merge(obj);
李>要进一步调试,请编辑
persitence.xml
,并在属性中添加以下行:这将启用精细日志记录并生成大量输出。您将能够看到更新查询以及具体发生的情况