/ / Entitäten in OneToMany mit RequestFactory & JPA entfernen - Java, gwt, jpa, requestfactory

Entfernen von Entitäten in OneToMany mit RequestFactory & JPA - java, gwt, jpa, requestfactory

Ich würde gerne wissen, wie man ein Kind mit der RequestFactory aus einer Eins-zu-Viele-Beziehung in GWT entfernt.

Meine GWT-Anwendung mit einer Entität aufgerufen Produkt und dieses Produkt hat eine Eins-zu-Viele-Beziehung zu einem Experte:

@Entity
public class Product {
...
OneToMany(mappedBy="product", orphanRemoval=true,
cascade={CascadeType.DETACH,CascadeType.MERGE,CascadeType.PERSIST,CascadeType.REFRESH},fetch=FetchType.EAGER)
Set<Expert> experts = new HashSet<Expert>();
...
}

@Entity(name = "EXPERT")
public class Expert {
...
@ManyToOne(optional=false)
Product product;
...
}

Ich habe eine Benutzeroberfläche, wo Sie einige ändern könnenProduktwerte, aber auch ein Fenster, in dem Experten hinzugefügt oder entfernt werden können. Das Hinzufügen eines Experten funktioniert gut, aber wie entferne ich einen Experten? Und welche Administration muss ich auf Client- und Serverseite vornehmen?

Ich habe bereits eine offene Produktanfrage, die gerade läuft.

Antworten:

0 für die Antwort № 1

Ich habe auch Ihre JPA-Frage beantwortet.

Aufgrund meiner bisherigen Erfahrungen kann es sehr schwierig sein, ein Kind in einer bidirektionalen Eltern-Kind-Beziehung in Hibernate zu entfernen.

Normalerweise verwende ich stattdessen eine unidirektionale Zuordnung, d. H. Sie können jedoch einen Getter implementieren, um alle Experten mit Hibernate Call zu erreichen. Die Vorteile sind:

  1. einfachere Zuordnung
  2. einfachere Codierung
  3. überschaubares Verhalten

Sie können jederzeit zurückkommen und Caching oder eifriges Abrufen zu einem späteren Zeitpunkt implementieren. Und meistens sind sie keine vorzeitige Optimierung.