我有像A类这样的域类,它继承了B和C类。我不希望在A类级别进行任何乐观锁定,但我希望在B类级别而不是在C类级别以及在表tableperhierarchyarchy中使用乐观锁定。
我曾尝试添加



在A类映射关闭和



在B类映射中。但是,即使对于B类对象,它也总是使版本字段为null。还有其他人也遇到过这样的问题吗?
我正在使用Grails 2.1.0和groovy 1.8.0。

最佳答案

在Hibernate中这似乎是不可能的。有一种方法可以将NONE指定为乐观锁类型but in a hierarchy, it can be done only on the root entity

您可以通过另一个抽象类A扩展VersionedA类。然后所有版本化的实体类都可以从VersionedA派生,非版本实体类仍可以直接扩展A

09-03 19:16