使用命名查询从父级删除子级

时间:2015-09-19 04:33:05

标签: java jpa jpql

我是JPA的新手,我的问题是,如果我在两个实体之间有以下父子关系。使用此设置(如下所示),是否可以仅使用命名查询删除子项("从子项中删除parent.id:id)然后不从父子集合中删除它?我已经测试了这种只使用命名查询的方法,而不是从父集合中删除子项,它工作得很好,但我试图看看当我以这种方式删除它们时是否有任何重大影响。我没有将它们移除到集合对象的原因是因为,Children设置为具有不可为空的字段父ID。非常感谢,我期待你的回答:)

public class Parent {

    ID.....

    parentName...

    @OneToMany(mappedBy = "parent", cascade = CascadeType.ALL,
        fetch = FetchType.EAGER, orphanRemoval = true)
    private List<Child> children;
}

public class Child {

    id;

    @ManyToOne(optional = false)
    @JoinColumns({
        @JoinColumn(name = "PARENT_ID", referencedColumnName = "ID", nullable = false)
    })
    private Parent parent;
}

0 个答案:

没有答案