我想强制 Hibernate (4.2) 通过字段 VERSION 而不是字段 ID 检查对象持久性。下面的 xml 应该可以工作:
<id name="id" column="ID">
<generator class="assigned" />
</id>
<version name="version" column="VERSION" unsaved-value="null" />
但我想使用注释。这段java代码够用吗?
@Id
public String getId() {
return this.id;
}
@Version
public Integer getVersion() {
return this.version;
}
如何指定未保存值标签?我没有找到任何这方面的注释。
我在某处读到,Hibernate 足够聪明,可以猜测一个对象是否持久,但不太令人信服。
如果我想使用 -1 而不是 null 该怎么办?一定有办法实现这一目标,不是吗?
<version name="version" column="VERSION" unsaved-value="negative" />
感谢您的帮助。
Edited。 Hibernate 3.6 参考指南说:
“Hibernate3 中几乎从不需要 unsaved-value 属性,并且注释中确实没有相应的元素。”
and
“分配的生成器使 Hibernate 使用 unsaved-value="undefined"。这会强制 Hibernate 访问数据库来确定实例是瞬态的还是分离的,除非有版本或时间戳属性,或者您定义了 Interceptor.isUnsaved() ”。
我相信@Version 对我来说就足够了。
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)