2011-12-09 16 views

Respuesta

17

Una entidad separada es una entidad que Estado no debe ser reflejada por el proveedor JPA.

En otras palabras, si cambia su estado (es decir, a través de métodos setters) estos cambios no se guardarán en la base de datos subyacente, ya que el proveedor JPA no tiene que "observar" dichas entidades.

Si la entidad E1 es una entidad gestionada, puede hacer que invoque el método de invocación (método muy razonable) EntityManager#detach(E1). También puede usar EntityManager#clear(), lo que borrará todo el PersistenceContext y hará que todas las entidades gestionadas se desconecten.

+1

tenga en cuenta que no todas las versiones de las implementaciones de JPA ofrecen separar –

5

Here puede leer sobre JPA entity lifecycle.

La entidad se puede separar después de la serialización o el cierre de Persistence Context, por ejemplo.

9

en realidad, ¿qué significa una entidad separada?

objetos de entidad independiente son objetos en un estado especial en el que no están gestionadas por cualquier EntityManager pero aún representan objetos en la base de datos. Leer más source

y ¿Cómo es posible convertir una entidad gestionada en una entidad separada durante una transacción?

Read here