如何解决将非审核实体与审核实体映射
我有一个@Entity
Parent
,它与Child
实体具有一对多的关系。
使用org.hibernate.envers.Audited
审核父实体。
@Entity
@EntityListeners(AuditingEntityListener.class)
@Audited
@Table(name = "PARENT")
public class Parent extends AuditEntity implements Serializable {
@OneToMany(
mappedBy = "parent",fetch = FetchType.LAZY,cascade = CascadeType.ALL
)
private Set<Child> childSet;
}
Child
实体只是一个字典表,不需要审核。
@Entity
@EntityListeners(AuditingEntityListener.class)
@Table(name = "CHILD")
public class Child extends AuditEntity implements Serializable {
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "parent_id",nullable = false)
@JsonIgnore
private Parent parent;
}
如果我按原样执行此代码,则会抛出Caused by: org.hibernate.MappingException: An audited relation from Parent to a not audited entity Child
我在网上发现了两个选择:要么在@NotAudited
关系上使用@OneToMany
,要么将Child
实体类标记为@Audited(targetAuditMode = RelationTargetAuditMode.NOT_AUDITED)
。
但是我不确定最适合我的要求。
请提出建议。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。