Hibernate持久化父或子对象

时间:2013-06-02 17:52:16

标签: java hibernate orm mapping

我想在“Foo”对象的“bars”列表中添加一个“Bar”对象。所以我创建了“Bar” - 对象,将“foo”变量设置为父级,并将对象添加到“bars”-list中。现在我的问题是:我是否坚持“Foo” - 或“Bar” - 对象。如果我只添加一个对象,这两种方法都有效。如果我将多个“条形”对象添加到“Foo”对象,我会收到错误:“行被另一个事务更新或删除(或未保存的值映射不正确)”。

所以我认为正确的方法是坚持“Bar” - 对象。但如果我这样做 - >我无法更新我的“numberBars” - 变量。

任何建议,持久保存对象以及更新“numberBars”变量的最佳方法是什么?

public Foo {
  @OneToMany(cascade = CascadeType.ALL)
  private List<Bar> bars;
  int numberBars;

}

public Bar {
  @ManyToOne
  @JoinColumn
  private Foo foo;

}

0 个答案:

没有答案