我正在使用带有 Grails 的休眠环境,使用 @Audited 定义一些实体以让它们被 API 审计。有些实体不应该被审计,所以我定义了 @Audited(... NOT_AUDITED) ,它运行也很顺利。
但这一次,我定义了以下关系
static hasMany = { foos : Foo }
Foo 在类级别也被声明为 NOT_Audited,但 envers 忽略了这一点并搜索 AUDIT 表。但是,我已经看到可能有必要将注释 @NotAudited 添加到关系中,以通知 envers 该类型不应该被审计。
所以,我试过:
static hasMany = {@NotAudited foos : Foo }
// Or desperately:
@NotAudited
static hasMany = { foos : Foo }
要么我的方法似乎是错误的,要么 GORM 忽略了注释。
有没有人有经验,在课堂级别定义“Not_Audited”是不够的,比如
@Audited(targetAuditMode = RelationTargetAuditMode.NOT_AUDITED)
class Foo{
...
}
@Audited
class Bar{
static hasMany = { foos : Foo }
...
}
编辑:也许值得一提的是 static hasMany = {@NotAudited foos : Foo }
遇到编译错误。所以,也许我的问题只是如何将注释添加到关系中。