Usar persistence.xml ou hibernate.cfg.xml?

Pessoal,

Boa tarde!

Estou criando um projeto web no netbeans com hibernate e a ide criou automaticamente o arquivo hibernate.cfg.xml. Eu devo usá-lo ou seria melhor criar um persistence.xml? Se for o caso, onde crio persistence.xml?

No caso de usar o hibernate.cfg.xml, como vou configurar nele minha unidade de persistência? Ou no hibernate.cfg.xml não se configura isto?

Agradeço muito se alguém puder me orientar neste sentido.

Leandro

depende de se vc vai usar jpa mesmo como na especificação ou a api do próprio hibernate. Estude JPA depois hibernate e ai então você mesmo que decide isso, é uma questão de preferencia, não de “melhor opção”, eu tenho a minha opinião, mas a sua pode ser diferente.

Alguém no forum poderia me orientar de forma mais objetiva?

Obrigado

o persistence.xml é uma cfg geral da jpa. o hibernate.cfg.xml é específico do hibernate.

não explico mais pq nao entendo muuuito disso :slight_smile:

[quote=LecoArax]Alguém no forum poderia me orientar de forma mais objetiva?

Obrigado[/quote]

Inicie lendo esses tutoriais:


[quote=romarcio][quote=LecoArax]Alguém no forum poderia me orientar de forma mais objetiva?

Obrigado[/quote]

Inicie lendo esses tutoriais:


[/quote]

Vlw. Obrigado pela orientação! :smiley:

Caso for usar com Jboss. Tanto faz também ou o JPA se enquadra mais ???

A questão ai seria entre usar Hibernate puro ou JPA. O que é melhor? Depende.

JPA é uma especificação de um framework ORM, foi feita inicialmente baseando-se em Hibernate, mas tem algumas diferenças. Tenta imaginar JPA como a receita do bolo. Quem quiser pode implementar aquela especificação, e dai surgem os diferentes providers JPA: Hibernate, Eclipselink, etc.

Seria como imaginar que um orgão internacional especificou um padrão de parafuso (mas não construiu um, só especificou). Os fabricantes de parafuso, construem parafusos seguindo aquele padrão se quiserem.

No caso do Hibernate, existe a implementação própria, que não segue a especificação JPA, o que eu chamo aqui de “Hibernate puro”. E existe também a implementação JPA do Hibernate, ou seja, a implementação do Hibernate que segue a especificação JPA.

Considerando somente as duas versões do Hibernate, puro e JPA, a diferença eu eu considero mais relevante é que a versão “pura” evolui mais rapidamente e normalmente está sempre a frente do JPA em termos de funcionalidades. JPA por ser uma especificação e ter todo um processo para ser evoluido, evidentemente demora mais.

Entretanto, quando se usa “Hibernate JPA”, você acaba tendo os dois mundos. Pois você pode muito bem usar o padrão JPA, e naqueles casos obscuros onde só Hibernate puro resolve o seu problema, é possível usa-lo também.

Resumindo, use a implementação Hibernate do JPA. E se um dia surgir a necessidade de usar algo que o JPA não suporte, você pode usar o Hibernate puro onde quiser. O JBoss suporta os dois sem problemas.

6 curtidas

rodrigo.uchoa , Meus parabens deu aula agora !

Tiro todas as minhas duvidas, meus parabens.

hibernate-cfg.xml --> é do Hibernate
persistence.xml --> é um JPA que pode ser usado pelo Hibernate e entre outros !!

com hibernate-cf.xml , se caso for mudar, o projeto para OpenXava5 . Terá que fazer tudo de novo com um persistence.xml
com persistence.xml , se caso for mudar, o projeto para OpenXava5. Terá que apenas mecher nas configurações do xml .

Para padrão use os 2 , pq nem tudo tem no persistence.xml

Se eu estiver errado pode me corrigir.

Mais uma vez , Rodrigo fica aii meus parabens !
Mandou muito õ/

1 curtida