Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

alura-lib JPAFactory?

Quando criei a alura-lib e movi para lá o JPAUtil, o seguinte comando:

private static EntityManagerFactory emf = Persistence.createEntityManagerFactory("livraria");

ficou ainda dependente da unidade de persistência "livraria", como usar em outro projeto?

3 respostas

Opa Carlos, o nome da persistence-unit poderia ser passado como parâmetro para um método? Você pode trocar a inicialização estática da classe JPAUtil para um método estático que recebe como argumento o nome da persistence unit.

Acho que não entendi.

O Dao Factory e o JPAFactory estão no projeto alura_lib.

O Dao, genérico, é quem injeta o EntityMamanger, no projeto alura_lib.

No projeto livraria do curso, do curso de CDI, eu injeto o Dao. Como passar o nome da unit de persistência:

@Inject private DAO daoAutor;

@Inject private DAO daoLivro;

@Inject
    private DAO<Autor> daoAutor;

    @Inject
    private DAO<Livro> daoLivro;