JPA不在单向@OneToMany关系中设置外键

时间:2017-04-12 17:52:57

标签: jpa eclipselink one-to-many

我有两个具有单向关系的类:

@Entity
public class A {

   @OneToMany(cascade = CascadeType.ALL)
   @JoinColumn(name="fk_column")
   private List<B> bList;

   ...
}

@Entity
public class B {
   ...
}

当我第一次这样做时:

A a = new A();
B b = new B();
a.getBList().add(b);
em.merge(a);

然后a和b在数据库中保持初始状态,b得到了正确的外键到a。

但是当我在另一个交易中这样做时:

A a = loadFromDatabaseByJPQLQuery(); 
B anotherB = new B();
a.getBList().add(anotherB);
em.merge(a);

然后另一个B确实存在,但它在fk_column中的外键是null。

如何正确存储密钥?

0 个答案:

没有答案
相关问题