我试图了解如何在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 {}
Run Code Online (Sandbox Code Playgroud)
现在,我还要保留审计信息,具体如下:
@Entity
public class AuditEvent {
@ManyToOne // ?
BaseEntity entity;
}
Run Code Online (Sandbox Code Playgroud)
什么是适当的映射auditEvent.entity?另外,Hibernate将如何实际坚持这一点?将一系列连接的表的生成(AuditEvent_Author,AuditEvent_Post,AuditEvent_Comment),或者是有没有更好的办法?
注意,我宁愿不让我的其他实体类暴露连接的另一面(例如,List<AuditEvent> eventson BaseEntity) - 但如果这是最干净的实现方式,那么它就足够了.
| 归档时间: |
|
| 查看次数: |
3109 次 |
| 最近记录: |