2013-06-22 67 views
0

您好除去我有這樣的情況:JPA /休眠 - 級聯從數據庫

實體標籤與2個字段多對多保持2套對象(OBJ1,OBJ2)的。當我刪除Obj1我想刪除TAG實體中設置的Obj1中包含的所有信息。你能告訴我如何做到這一點?


@Entity(name = "tag") 
public class Tag { 

    ..... 

@ManyToMany(fetch = FetchType.LAZY) 
private Set<Checkpoint> checkpoints; 

    ...... 
} 

@Entity(name = "checkpoint") 
public class Checkpoint implements Serializable { 

      ...... 

} 

還有就是在檢查點標籤沒有提及。如果我將Cascade設置爲ManyToMany,那麼當我刪除標記時,將刪除具有此標記的所有用戶。我想要的是刪除檢查點時刪除tag_checkpoint表中的行。我應該自己做還是有很好的方法來做到這一點?

回答

0

我剛剛從我的數據庫中刪除了對象。

0

如果ManyToMany級聯刪除,則在@ManyToMany註釋中設置cascade = CascadeType.ALL應該可以工作。如果沒有,那麼你可能要考慮將CascadeType.ALL分成多個@OneToMany(如果可能)。