13
说,我有以下实体:与@OneToMany嵌入实体属性
@Entity
public class A {
@Id
@GeneratedValue
private Long id;
@Embedded
private B b;
//getters and setters
}
@Embeddable
public class B {
@OneToMany
private List<C> cList;
//getters and setters
}
@Entity
public class C {
@Id
@GeneratedValue
private Long id;
//other fields, getters and setters
}
使用模式,自动生成功能,以Hibernate
我得到它包含A
和C
之间的映射一个额外的表。但我希望通过将A
的ID加入C
(,例如没有附加表)来实现一对多关系。
这可能吗?如果是,我应该用什么注释来创建这样的映射?
但是我怎么规定,即'A_ID'是标识符实体'A'? – jFrenetic 2012-03-26 19:09:52
您不必指定,B中给出的映射在A的上下文中进行评估,这就是您的持久性提供者知道它的原因。或者,也许你的意思是如何覆盖连接列名 - 我添加了示例来回答。 – 2012-03-26 19:31:38
非常感谢!这对我有效。我以为我需要明确地告诉持久化提供者从哪个实体获得'id',但事实证明它有点聪明:) – jFrenetic 2012-03-26 19:59:56