EntityManager.merge()不更新子实体

时间:2015-12-02 06:34:36

标签: hibernate entitymanager

我正在尝试使用实体管理器merge()更新子实体。我的实体是:

 @Entity
public class Customer {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;
    private String name;
    @OneToMany(cascade = {CascadeType.ALL}, fetch = FetchType.EAGER, mappedBy = "customer")
    private Set<Address> stores = new LinkedHashSet<>();

}



  @Entity
public class Address{

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;
    private String addressType;

    @ManyToOne(cascade = CascadeType.ALL)
    @JoinColumn(name = "customerId")
    private Customer customer;

}

我在一个jsp页面中添加Address(子实体)并在另一个jsp页面中删除它们并使用实体管理器合并方法保存它,并在每个页面中我保存客户(父实体)。它完美地工作,直到添加地址,但删除后,它不删除与客户相关的地址。请看看,让我知道我是否遗漏了任何东西。

0 个答案:

没有答案