Pessoal… estou utilizando hibernate com jpa… e tenho uma duvida… o q eh melhor eu usar??
o sesion do hibernate. ou o entityManager do jpa??
Session
Session session = HibernateUtil.getSessionFactory().openSession();
ou EntityManager
EntityManagerFactory emf = Persistence.createEntityManagerFactory("NotasPU", propertiesMap);
EntityManager SESSION = emf.createEntityManager();
qual a diferenca entre eles???
valeu
A diferença é que você irá trabalhar com o objeto EntityManager da JPA.
No seu caso (já que você está utilizando o Hibernate como provider), trabalhe logo com o objeto Session do Hibernate.
O EntityManager criado para trabalhar com Hibernate, é simplismente um adptador que encapsula a session…
ou seja…
em.persist() vai chamar a session que ta dentro dele, e fazer session.persist() …
ate onde conseguir, use o EM, pois é uma API mais generica, e assim vc não fica tão dependente do Hibernate, e podera trocar (caso precise algum dia) sem muito sofrer…
todos os frameworks que trabalham com JPA tem um EM, portanto usando EM é indiferente c vc trabalha com Hibernate, ou com TopLink, ou com qualquer outro, e assim fica mais facil de trocar caso algum dia precise…
…
se não se importar com isso, vc pode usar direto session, mais ai estara assinando a certidão de casamento com o Hibernate, e como em todo casamento, qualquer separação vai sair bem caro na hora da divisão de bens heheh ^^
fabioebner, vc poderia postar como vc fez sua classe HibernateUtil e o Hibernate.cfg por favor.
muito obrigado.