JPA - 插入许多表格

时间:2014-04-19 14:04:40

标签: java mysql hibernate jpa

我想知道是否以某种方式一次插入多个表格。

示例:

Class A {...}
Class B {...}
Class C {A a, B b}

C.setA(new A());
C.setB(new B());

然后,当我尝试插入对象C时,它不允许我,因为JPA说在数据库中不存在任何a或b对象。所以,我必须逐个插入A,然后是B,然后是C,每次我想插入3个新对象时,每次去数据库3次真的很糟糕。

Theres以某种方式向JPA解释我想要插入C类及其依赖项(A和B)?

谢谢!

1 个答案:

答案 0 :(得分:0)

为此,我们可以使用JPA级联功能:

@Entity
Class C {
    @ManyToOne(cascade=CascadeType.ALL)
    private A a;

    @ManyToOne(cascade=CascadeType.ALL)
    private B b;
}

有了这个,通过在C中调用persist,你也可以同时保持它的A和B.