JPA外键 - 必要时插入新记录?

时间:2014-12-16 23:44:45

标签: java mysql jpa jpa-2.0

是否可以创建一些注释组合,提供以下内容:

  • 有2张桌子(一对二关系)
  • 是否可以在JPA级别上进行编程,只需创建“one”类的对象,如果有id设置只是在“many”表中进行引用,并且如果没有设置id,则在“一个“表并在”许多“表中引用该ID

1 个答案:

答案 0 :(得分:1)

没有。您需要自己创建所有对象。

如果您愿意,您可以使用级联来执行自动持久化。

这将是:

a.setB(b);
b.getAList().add(a);

entityManager.persist(a);

在你的课程中你会映射如下:

public class A {
    // other methods and ID

    @ManyToOne
    @JoinColumn(name = "b_id")
    private B b;
}


public class B {
    // other methods and ID

    @OneToMany(mappedBy = "b", cascade = CascadeType.PERSIST)
    private List<A> aList;
}