Hibernate:从Join Table中删除orphan

时间:2011-08-05 14:48:01

标签: java hibernate jpa many-to-many

我有两个持久的类。他们处于多对多的关系中。一个类具有另一个类的一组对象。 @Entity class A { @Id @Generated int id; @ManyToMany(cascade = CascadeType.ALL) Set<B> myset = new HashSet<B>(); }

@Entity class B { @Id @Generated int id; }

Hibernate创建表:A_B,列为A_id和B_id。如果我删除一些A或B对象,A_B表中的任何entrie都不再有意义。可以自动删除吗?

1 个答案:

答案 0 :(得分:1)

删除A时,应先清除其B组。

当你删除B时,你应该从每个A的B组中删除它。如果你把关系设为双向的话,这个操作系统当然会更容易。