Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > it.comp.java > #8893

Re: JPA detached entity

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>

Show all headers | View raw


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 | NextPrevious in thread | Find similar


Thread

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