Grails中的MappedSuperclass替代方案

Grails中的MappedSuperclass替代方案,grails,jpa,auditing,Grails,Jpa,Auditing,在过去的许多项目中,我使用JPA/Hibernate方法向系统添加审计功能。这是非常有效和不引人注目的 是否有Grails@MappedSuperclass替代方案(缺少用Java而不是Groovy编码域模型对象)?在没有为父类创建表的情况下,如何按子类方法在表中声明父类?我已经阅读了GORM文档(),但是除了每个层次结构的表与每个子类的表的讨论之外,我没有找到关于如何做到这一点的任何细节 或者,在Grails中实现这种审计的推荐方法是什么?好的,进行了更多的搜索,我回答了自己的问题:) 本质上

在过去的许多项目中,我使用JPA/Hibernate方法向系统添加审计功能。这是非常有效和不引人注目的

是否有Grails@MappedSuperclass替代方案(缺少用Java而不是Groovy编码域模型对象)?在没有为父类创建表的情况下,如何按子类方法在表中声明父类?我已经阅读了GORM文档(),但是除了每个层次结构的表与每个子类的表的讨论之外,我没有找到关于如何做到这一点的任何细节


或者,在Grails中实现这种审计的推荐方法是什么?

好的,进行了更多的搜索,我回答了自己的问题:)

本质上,它只需将MappedSuperclass声明为抽象类,grails不会为其创建表。我认识到(RTFM基本上…工作奇迹):“GORM支持从抽象基类和具体持久GORM实体继承。”也就是说,具体类是持久的,所以抽象类不是。仔细阅读是值得的

例如

将仅创建book表,它将具有

创建日期

上次更新

列。此外,作为额外的好处,dateCreated和LastUpdate属性由Grails提供


希望这对其他人有所帮助。

是的,出于某种原因,这在Grails 2中不再有效了抽象类有自己的表定义吗?已经在Grails论坛上问过了,但似乎没有人知道为什么会改变。有人知道为什么或者知道解决方法或设置吗?@HussainFakhruddin你是说2.x,对吗?我们使用的是2.5.4
abstract class Auditable {
    Date dateCreated
    Date lastUpdated
}

class Book extends Auditable {
    String title
    String description
}