从JPA实体中删除元素时,从一对多关系中删除元素

时间:2011-08-10 08:42:01

标签: java database hibernate jpa

我正在使用JPA(Hibernate)和以下具有一对多关系的实体类。

当我向列表添加元素,然后持久化组织实体时,它会将新元素添加到proyects表中,但是当我从列表中删除元素时,在保持(或合并)时没有任何反应,我希望这些元素将从数据库中删除。

我在OneToMany注释中也尝试了 orphanRemoval = true ,但它不起作用。

@Entity
public class Organization {     

    @Id
    @GeneratedValue
    public long internalId;

    @Basic
    @Column(nullable = false, length = 100)
    private String name;

    @OneToMany(cascade = CascadeType.ALL, mappedBy = "organization")
    private List<Proyect> proyects;

    // Getters and Setters
}

1 个答案:

答案 0 :(得分:1)

您需要将Proyect.organization设置为null并更新该实体,因为此属性负责数据库条目(在这种情况下Proyect是拥有方)。