Come eliminare JPA in Java

June 30

Come eliminare JPA in Java


L'API Java Persistence, o JPA, è uno dei principali componenti del Java Enterprise Edition 5 (Java EE 5) specifica EJB 3.0, che controlla Java persistenza e semplifica il suo effetto in un 5 applicazione Java Standard Edition (Java SE 5). Consente inoltre di definire un metodo con il quale si mappare oggetti Java in tabelle di database relazionali e ti dà la libertà di aggiungere, aggiornare ed eliminare oggetti JPA nel progetto.

istruzione

1 Incollare il codice seguente per eliminare un oggetto JPA dal database. Questo è il metodo "rimuovere":

Impiegato dipendente = em.find (Employee.class, 1);

em.getTransaction().begin();

em.remove (dipendente);

em.getTransaction () commit ().;

Questo è solo uno dei modi per eliminare un oggetto JPA dal database. Quando si impegnano questa transazione, si elimina fisicamente l'oggetto entità dal database. Ma si dovrebbe decidere di conservare i dati, tutto ciò che dovete fare è annullare la transazione, o meno pubblicarlo, per mantenere intatto i dati. Questo concetto è indicato anche come il metodo "esplicito remove".

2 Incollare il codice qui sotto per contrassegnare un campo di riferimento con CascadeType.REMOVE o CascadeType.ALL, che comprende rimuovere, se si preferisce, di un ente o gli enti che si desidera rimuovere:

@Entità

class Employee {

:

@OneToOne (Cascade = CascadeType.REMOVE)

Indirizzo Indirizzo privato;

:

}

A causa dell'effetto a cascata del metodo CascadeType.REMOVE, ogni "Indirizzo" istanza della classe "Dipendente" nel database verranno eliminati dopo si etichetta il campo indirizzo che i riferimenti a quella specifica istanza.

3 Incollare il codice riuscendo ad attivare una modalità più aggressiva "togliere a cascata" che utilizza il componente orphanRemoval delle annotazioni @OneToOne e @OneToMany:

@Entità

class Employee {

:

@OneToOne (OrphanRemoval = true)

Indirizzo Indirizzo privato;

:

}

In questo esempio, orphanRemoval = true e cascade = CascadeType.REMOVE sono simili, il che rende il CascadeType.REMOVE un metodo ridondante, quindi non eliminare nulla; solo la funzione orphanRemoval eseguirà la cancellazione in quanto è impostata sullo stato "vero".

Consigli e avvertenze

  • Imparare le sigle del programma linguaggio Java per comprendere meglio i tutorial troverete on-line.
  • Partecipare a forum di discussione per chiedere il parere di esperti da rinomati programmatori Java.