gpt4 book ai didi

java - Hibernate - 持久化多态连接

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:29:09 24 4
gpt4 key购买 nike

我试图了解如何在 hibernate 中最好地实现一对多多态。

例如:

@MappedSuperclass
public class BaseEntity {
Integer id;
// etc...
}

@Entity
public class Author extends BaseEntity {}

@Entity
public class Post extends BaseEntity {}

@Entity
public class Comment extends BaseEntity {}

现在,我还想使用以下类来保存审计信息:

@Entity
public class AuditEvent {
@ManyToOne // ?
BaseEntity entity;
}

auditEvent.entity 的适当映射是什么? ?此外,Hibernate 将如何真正坚持这一点?会生成一系列连接表( AuditEvent_AuthorAuditEvent_PostAuditEvent_Comment ),还是有更好的方法?

请注意,我不想让我的其他实体类暴露连接的另一端(例如,List<AuditEvent> events 上的 BaseEntity )——但如果这是最简洁的实现方式,那么它就足够了。

最佳答案

映射的父类(super class)不是实体,因此不能成为关联的一部分(如 EJB-199 中所提醒)。所以要么:

关于java - Hibernate - 持久化多态连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2928916/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com