Die einzelnen CascadeType-Beschreibungen können etwas verwirrend sein, aber es gibt eine einfache Möglichkeit, dies anhand des allgemeinen Falls herauszufinden.
Für jeden der CascadeType
Werte bedeutet dies, dass die Operation auch auf diese zugeordnete Entität angewendet wird , wenn eine Operation X
über die EntityManager
Schnittstelle für eine Instanz aufgerufen wird und diese Instanz Verweise auf andere Entitätsinstanzen hat und diese Zuordnung CascadeType.X
definiert hat EntityManager
.
Also EntityManager.refresh()
ist definiert als:
Aktualisieren Sie den Status der Instanz aus der Datenbank und überschreiben Sie gegebenenfalls an der Entität vorgenommene Änderungen.
Wenn also Entität A einen Verweis auf Entität B hat und dieser Verweis mit Anmerkungen versehen @CascadeType.REFRESH
und EntityManager.refresh(A)
aufgerufen wird, EntityManager.refresh(B)
wird er implizit auch aufgerufen.