The Java Persistence API , oder JPA , ist ein wichtiger Bestandteil der Java Enterprise Edition 5 (Java EE 5 ) EJB 3.0 -Spezifikation, die Java Persistence steuert und vereinfacht seine Wirkung in einer Java Standard Edition 5 (Java SE 5 ) Anwendung . Es erlaubt Ihnen auch , ein Verfahren , mit dem Sie Ihre Java-Objekten auf relationale Datenbank-Tabellen wird eine Karte zu definieren und gibt Ihnen die Freiheit , hinzufügen, aktualisieren und löschen JPA Objekte in Ihrem Projekt . Anleitung
1
Fügen Sie den folgenden Code, um eine JPA Objekt aus der Datenbank zu löschen. Dies ist die " Entfernen "-Methode :
Mitarbeiter Mitarbeiter = em.find ( Employee.class , ist nur eine der Möglichkeiten, um ein Objekt JPA aus Ihrer Datenbank zu löschen. Wenn Sie diese Transaktion festzuschreiben , es physisch löscht die Entitätsobjekt aus Ihrer Datenbank . Doch sollten Sie , um die Daten zu halten entscheiden, ist alles, was Sie zu tun haben, die Transaktion abzubrechen , oder nicht posten , um die Daten intakt . Dieses Konzept wird auch als "explicit entfernen " -Verfahren bezeichnet .
2
Fügen Sie den Code unten, um ein Referenz-Feld mit CascadeType.REMOVE markieren , oder CascadeType.ALL , die zu entfernen , je nachdem, was Sie bevorzugen , eines Unternehmens oder Entitäten, die Sie entfernen möchten beinhaltet:
@ Entity
class Employee {
:
< p> @ OneToOne ( Kaskade = CascadeType.REMOVE )
privaten Adresse Adresse;
:
}
Wegen der Dominoeffekt der CascadeType . Remove-Methode , wird jeder "Address" Instanz des "Employee "-Klasse in der Datenbank gelöscht, nachdem Sie das Adressfeld zu markieren , dass Verweise auf diesen konkreten Fall .
3
den nachfolgenden Code einfügen werden
@ Entity
class Employee {
:
@ OneToOne ( orphanRemoval = true)
privaten Adresse Adresse;
:
}
In diesem Beispiel orphanRemoval = true und Kaskade = CascadeType.REMOVE sind ähnlich, was macht die CascadeType.REMOVE ein redundantes Verfahren , daher wird es nichts löschen ; . nur die orphanRemoval Funktion wird die Löschung durchgeführt werden, da es auf "true" gesetzt ist Status