我有两个具有相同字段的 JPA 实体,我想将它们存储在不同的表中。因此,我将它们基于抽象的公共(public)映射基类,以避免重复代码。现在我想要审核其中一张表,而另一张则不审核。但是,当我将一个类设置为已审核时,Envers 会为这两个派生类创建一个 _AUD 表。 即使将另一个派生类设置为审核模式NotAudited,也会创建其审核表。 是否可以按照描述进行配置?
我的(简化)类(class):
@MappedBaseClass
@Inheritance(strategy=InheritanceType.TABLE_PER_CLASS)
public abstract class AbstractPrice {
// some fields and some methods
}
@Entity
@Audited(targetAuditMode=RelationTargetAuditMode.AUDITED)
public class Price extends AbstractPrice {
}
@Entity
@Audited(targetAuditMode=RelationTargetAuditMode.NOT_AUDITED)
public class OriginalPrice extends AbstractPrice {
}
最佳答案
targetAuditMode
只能用于关系字段。如果您不希望审核实体,只需删除注释即可。
关于java - Envers 是否可以为具有公共(public)映射基类的不同具体派生类提供不同的审核模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23566564/