Bom dia pessoal,
Estou estudando para a SCBCD(EJB 3.0) pelo livro Enterprise Java Beans(5º Edição).
Lendo o capitulo que fala de entity magager(pela forma que o livro coloca) me surgiu uma duvida.
Em certo momento ele fala de persistence context e entity manager, o entity manager sempre esteve bem claro em minha mente o seu papel, mas o persistence context não.
O livro está falando do ciclo de vida dos objetos persistentes, os estados gerenciado, não gerenciado e etc…
E que existem as duas formas de se trabalhar com persistence context, a forma transacionada pelo container e a forma estendida(Que creio que seja em aplicações standalone ou não gerenciadas por conteiner…)
O livro está em português e isso está atrapalhando bastante.
Agradeço uma melhor explicação sobre esses dois caras ai…
Valeu
Entity Manager X Persistence Context
5 Respostas
O EntityManager é uma das coisas do PersistenceContext.
Entity Manager é o mecanismo através do qual vc vai interagir com o banco de dados em si, ou seja, ele “sabe” como fazer as operações de CRUD, por exemplo.
Persistence Context é o conjunto de instâncias de entidades, na qual cada entidade tem uma instância correspondente gerenciada por um determinado Entity Manager.
Basicamente é isso! Espero ter ajudado.
Abraço
A2
Ola aluisiodsv, valeu…
Então, o contexto de persistência pode ter um ou mais entity managers, certo ?? E cada objeto deve ser único dentro de cada entity manager, certo ?? Então se houver dois entity managers em um mesmo persistence context, pode acontecer de o mesmo objeto estar carregado em cada um dos entity managers e sofrer alterações nos dois, certo ??
O que mais tem em um persistence context ???
Valeu !!
Oa a2_tech, valeu !!!
Então, em uma aplicação j233 onde o container faz o gerenciamento, existe um persistence context(Talvez por isso a anotação é @PersistenceContext) com vários entity managers ??? To meio confuso,
Obrigado.
Se estiver trabalhando com apenas um banco de dados vc terá apenas um EntityManager. Este tomará conta de tudo o que fizer no banco de dados, valendo para todas os seus objetos de entidade.
Outra parte do PersistenceContext são as transações.
edit: Obs: pelo que entendi, sobre o que o a2_tech disse, não é bem isso que é um PersistenceContext.