Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
| From | Davide <a@a.com> |
|---|---|
| Newsgroups | it.comp.java |
| Subject | Re: JPA detached entity |
| Date | 2016-03-26 20:15 +0100 |
| Organization | Netfront http://www.netfront.net/ |
| Message-ID | <nd6n2e$1gd2$1@adenine.netfront.net> (permalink) |
| References | <nd1i1r$25te$1@adenine.netfront.net> <0d59bcc5-4860-4218-b339-7f2f17cea807@googlegroups.com> <nd688e$h2n$1@adenine.netfront.net> <b82779cc-87ea-4e38-b180-d05c337b5afc@googlegroups.com> |
Il 26/03/2016 19:55, Cicap ha scritto: > Il giorno sabato 26 marzo 2016 15:01:36 UTC, Davide ha scritto: >> Il 26/03/2016 15:11, Cicap ha scritto: >>> Il giorno giovedì 24 marzo 2016 20:18:05 UTC, Davide ha scritto: >>>> Salve, >>>> sto sviluppando un'applicazione java ee che usa jpa, se nel DAO faccio >>>> una cancellazione (metodo remove()) di un'entità detached viene >>>> giustamente generata un'eccezione che indica che l'entità è detached >>>> mentre invece se faccio un'aggiornamento (metodo merge()) di un'entità >>>> detached non viene generata nessuna eccezione e l'aggiornamento va a >>>> buon fine, come mai succede questo? >>> >>> Domanda: cosa pensi che faccia l'operazione "merge" in generale? E da quale fonte ti sei formato quell'idea. >>> >> >> Scusami, per errore ho risposto sulla tua mail. >> >> L'operazione merge credo che faccia un update, la fonte è: >> https://docs.oracle.com/javaee/6/api/javax/persistence/EntityManager.html#merge%28T%29 > > "Merge the state of the given entity into the current persistence context." > > Quindi se un'entity e' detached il metodo merge *ritorna* un'entity managed, quindi sincronizzera' il suo stato con il database. E' il motivo per cui esiste "merge": se hai un'entity detached ci devi fare il "merge" nel persistence context prima di poterci operare (solo se vuoi sincronizzarla verso il db ovviamente). > > Attenzione che merge ritorna un'entity managed, mentre l'entity passata come parametro rimane detached (se era detached). > > Dovresti prima studiarti come minimo il funzionamento di JPA riguardo al lifecycle delle entity, perche' e' evidente che ti mancano i principi basilari. > > Esempio: > > http://www.objectdb.com/java/jpa/persistence/managed > Grazie del chiarimento. Saluti, Davide --- news://freenews.netfront.net/ - complaints: news@netfront.net ---
Back to it.comp.java | Previous | Next — Previous in thread | Find similar
JPA detached entity Davide <a@a.com> - 2016-03-24 21:18 +0100
Re: JPA detached entity Cicap <forzatonino@gmail.com> - 2016-03-26 07:11 -0700
Re: JPA detached entity Davide <a@a.com> - 2016-03-26 16:02 +0100
Re: JPA detached entity Cicap <forzatonino@gmail.com> - 2016-03-26 11:55 -0700
Re: JPA detached entity Davide <a@a.com> - 2016-03-26 20:15 +0100
csiph-web