Ich habe zwei Entitäten namens User und UserProfile in meinem Datenmodell. So werden sie abgebildet.
Code von der Benutzerentität:
@OneToOne(cascade=CascadeType.ALL)
@PrimaryKeyJoinColumn
public UserProfile getUserProfile(){
return this.userProfile;
}
public void setUserProfile(UserProfile userProfile){
this.userProfile=userProfile;
}
Code von UserProfile Entity:
@OneToOne(mappedBy="userProfile",cascade=CascadeType.ALL)
public User getUser(){
return this.user;
}
public void setUser(User user){
this.user=user;
}
Wie Sie sehen, habe ich eine CascadeType.ALL
für das Benutzerattribut in UserProfile. Aber wenn ich versuche, die UserProfile-Entität zu löschen, bleibt die entsprechende User-Entität erhalten. (Wenn ich versuche, die Entität User zu löschen, wird die entsprechende Entität UserProfile gelöscht).
Hier ist meine Frage:-
- Gelten Kaskaden nur, wenn ich sie für die Entität, die die Beziehung besitzt, festlege?