Ho due classi, ad esempio Gruppo e Persona con una relazione ManyToMany mappata in una JoinTable.JPA/Hibernate: ManyToMany elimina la relazione
Se elimino una persona che ha una relazione con un gruppo, voglio eliminare la voce dalla tabella di join (non eliminare il gruppo stesso!).
Come è necessario definire le Annotazioni a cascata? Non ho trovato una documentazione molto utile, ma molte discussioni consiliari irrisolti ...
public class Group {
@ManyToMany(
cascade = { javax.persistence.CascadeType.? },
fetch = FetchType.EAGER)
@Cascade({CascadeType.?})
@JoinTable(name = "PERSON_GROUP",
joinColumns = { @JoinColumn(name = "GROUP_ID") },
inverseJoinColumns = { @JoinColumn(name = "PERSON_ID") })
private List<Person> persons;
}
public class Person {
@ManyToMany(
cascade = { javax.persistence.CascadeType.? },
fetch = FetchType.EAGER,
mappedBy = "persons",
targetEntity = Group.class)
@Cascade({CascadeType.?})
private List<Group> group;
}
Desidero rimuovere l'associazione automaticamente quando si elimina un oggetto persona. La mia intenzione è di non doverlo fare manualmente. Se devo, non ho bisogno di cascata. O ho sbagliato la funzione Cascading? – tautologe
Devi. Cascare non lo fa. –