在JPA2.0中编写了规范:
映射超类定义的
持久关系必须是单向的。
为什么不能在@MappedSuperclass中使用双向关系?我在Hibernate中尝试过,它看起来很有效,有什么问题吗?
我们正在生成模型,因此需要在@MappedSuperclass类中指定所有关系,并使用@Entity类扩展该类,@Entity类只包含手写代码。
发布于 2010-11-25 10:17:34
我猜想这是因为映射的超类不能有自己的表,因此被持久化到子类的表中,如果映射的超类有多个子类,则从另一方返回的关系没有一个FK来获取映射的超类信息。这样,大多数JPA实现将允许它,但通常是在映射的超类中有一个子类时。
显然,您必须询问JPA的原因,因为他们不会在他们的规范中提到他们。
https://stackoverflow.com/questions/4275815
复制相似问题