Java 在Hibernate中映射两个抽象实体的映射
我正在尝试在hibernate中映射以下数据结构:Java 在Hibernate中映射两个抽象实体的映射,java,hibernate,Java,Hibernate,我正在尝试在hibernate中映射以下数据结构: @OneToMany(fetch = FetchType.EAGER,cascade=Array(CascadeType.REMOVE,CascadeType.REFRESH,CascadeType.MERGE,CascadeType.PERSIST)) @JoinTable(name = "links", joinColumns = Array(new JoinColumn(name = "link_id"))) @MapKey(
@OneToMany(fetch = FetchType.EAGER,cascade=Array(CascadeType.REMOVE,CascadeType.REFRESH,CascadeType.MERGE,CascadeType.PERSIST))
@JoinTable(name = "links", joinColumns = Array(new JoinColumn(name = "link_id")))
@MapKey(name="id")
@Fetch(value = FetchMode.SELECT)
@Access(AccessType.PROPERTY)
def getLinksMapNative:java.util.Map[MyClass,MyClass] = {
linksMap
}
但我有以下问题:
- 如果我离开MapKey注释,当从会话加载时,映射的键是MyClass的整数id,而不是MyClass的实例,这将在运行时导致ClassCastException
- 如果我取下它,因为MyClass是一个抽象实体,我得到: org.hibernate.InstantiationException:无法实例化抽象类或接口