0
respostas

Dúvida com EntityManagerProducer

Olá Nico, uma forma quase padrão de se criar um EntityManagerProducer é a forma que é criado no curso:

public class JPAUtil {
    private static EntityManagerFactory emf = Persistence
            .createEntityManagerFactory("livraria");

    @Produces
    @RequestScoped
    public EntityManager getEntityManager() {
        return emf.createEntityManager();
    }
    public void close(@Disposes EntityManager em) {
        em.close();
    }
}

funciona que é um doce, entretanto tem uma coisa que me chama atenção nessa implementação, essa implementação não deixa de ser um openEntityManagerInView, O entity manager é aberto no inicio da requisição e é fechado ao final, mas e se eu não quiser usar openEntityManagerInView (muitos até consideram um anti pattern) no meu projeto, se eu não quiser permitir lazy loading no meu projeto, se eu quiser que todas as minhas queries sejam planejadas, como posso implementar esse producer?

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software