11.07.2015 Views

Persistência com JPA2 e Hibernate - Inpi

Persistência com JPA2 e Hibernate - Inpi

Persistência com JPA2 e Hibernate - Inpi

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

ENTITY MANAGER 46Para tornar apenas um objeto detached, devemos utilizar o método detach():1 Pessoa p = manager . find ( Pessoa .class , 1L);2 manager . detach (p);Para tornar detached todos os objetos administrados por um Entity Manager, devemos utilizar ométodo clear().1 manager . clear ();Na chamada do método close(), todos os objetos administrados por um Entity Manager tambémpassam para o estado detached.1 manager . close ();Detached → ManagedO estado de um objeto detached pode ser propagado para um objeto managed <strong>com</strong> a mesmaidentidade para que os dados sejam sincronizados <strong>com</strong> o banco de dados. Esse processo é realizadopelo método merge().1 Pessoa pessoaManaged = manager . merge ( pessoaDetached );Managed → RemovedQuando um objeto managed se torna detached, os dados correspondentes a esse objeto não sãoapagados do banco de dados. Agora, quando utilizamos o método remove(), marcamos um objetopara ser removido do banco de dados.1 Pessoa p = manager . find ( Pessoa .class , 1L);2 manager . remove (p);O conteúdo do objeto será removido no banco de dados quando o provedor realizar uma sincronização.Managed → ManagedO conteúdo de um objeto no estado managed pode ficar desatualizado em relação ao banco dedados se alguém ou alguma aplicação alterar os dados na base de dados. Para atualizar um objetomanaged <strong>com</strong> os dados do banco de dados, devemos utilizar o método refresh().1 Pessoa p = manager . find ( Pessoa .class , 1L);2 manager . refresh (p);Exercícios de Fixação46 www.k19.<strong>com</strong>.br

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!