孙子对象没有更新

时间:2015-06-02 13:00:00

标签: java hibernate annotations

我有一个父母,一个孩子和一个孙子对象。 问题是,当我删除应用程序中的孙子并保存时 父对象,孙子更改不会更新。

在父类

  @OneToMany(fetch = FetchType.EAGER, mappedBy = "parent")
  @ForeignKey(name = "FK_1")
  @Cascade({CascadeType.ALL})
  private Set<Child> children;

在儿童班

  @ManyToOne(fetch = FetchType.EAGER)
  @JoinColumn(name = "parent")
  @XmlTransient
  private parent parent;

  @OneToMany(fetch = FetchType.EAGER, mappedBy = "child")
  @ForeignKey(name = "FK_2")
  @Cascade({CascadeType.ALL})
  private Set<GrandChild> grandchildren;

在GrandChild班级

  @ManyToOne(fetch = FetchType.EAGER)
  @JoinColumn(name = "child", nullable = false)
  @XmlTransient
  private Child child;

我使用hibernate 4.2.2.Final。

任何想法?

1 个答案:

答案 0 :(得分:1)

尝试将orphanRemoval添加到您的收藏中。

@OneToMany(fetch = FetchType.EAGER, mappedBy = "parent", orphanRemoval=true)
@OneToMany(fetch = FetchType.EAGER, mappedBy = "child", orphanRemoval=true)