Galera comprei um livro que explica como usar o Hibernate com JPA e spring, o exemplo funcionou normal, usa os métodos da jpa, merge, remove, etc e EntityManager.
mas em nenhum momento foi configurado um arquivo no hibernate, até então todos que estudei sempre configurava o hibernate.cfg.xml mesmo usando annotations, é totalmente dispensável o hibernate.cfg.xml :?:
parece que tudo é feito no xml do spring, quem puder esclarecer.
Não sei muita coisa sobre spring mas com o JPA vc pode ou configurar tudo no arquivo persistence.xml se quiser. Ou pode usar o do hibernate. Isso é opcional. Eu acho até que deve dar para usar os dois, mas não sei o que seria melhor.
H
Herrera
ola,
usando hibernate com jpa, é dispensavel realizar as configurações em hibernate.cfg.xml, tudo é feito no persistence.xml. Usando o spring + jpa + hibernate, todas as configurações são realizada no applicationContext, dispensando assim persistence.xml .
Herrera
P
Paulo_Silveira
lembrando que se voce nao usa o persistence.xml e sim o application context, esta amarrado a JPA. mas nao acho grande problema, depois é facil tirar essa configuracao do spring se voce quiser.
R
rdantas
Salve, salve pessoal. Bom JavaTux, muito interessante sua pergunta. A resposta é SIM. O hibernate.cfg.xml é totalmente dispensável. Abaixo segue um exemplo de como fazer isso.
packagebr.com.guj.utils;importorg.hibernate.Session;importorg.hibernate.SessionFactory;importorg.hibernate.cfg.AnnotationConfiguration;importorg.hibernate.cfg.Configuration;/** * * @author Rodrigo Dantas Nunes - MedSource Consultoria e Desenvolvimento * */publicclassConnectDB{privatestaticfinalSessionFactorysessionFactory;privatestaticfinalThreadLocal<Session>threadLocal=newThreadLocal<Session>();static{try{Configurationconfiguration=newAnnotationConfiguration().addAnnotatedClass(br.com.guj.entidades.Usuario.class).addAnnotatedClass(br.com.guj.entidades.Moderador.class).addAnnotatedClass(br.com.guj.entidades.Administrador.class);configuration.setProperty("hibernate.connection.url","<SUA URL>");configuration.setProperty("hibernate.connection.driver_class","<SEU DRIVER>");configuration.setProperty("hibernate.connection.username","< USUARIO DO SGBD>");configuration.setProperty("hibernate.connection.password","<SENHA DO USUARIO>");configuration.setProperty("hibernate.dialect","<DIALETO DO SGBD>");sessionFactory=configuration.buildSessionFactory();}catch(Throwablet){thrownewExceptionInInitializerError(t);}}publicstaticSessiongetInstance(){Sessionsession=(Session)threadLocal.get();session=sessionFactory.openSession();threadLocal.set(session);returnsession;}}