Hibernate e JPA

Dae pessoal surgiram varias duvidas sobre jpa e hibernate…
alias jpa é uma especificação ou um padrão???
e hibernate,…poderia classificar como um software a implementar ou só um framework…qual a visão mais abstrata disto…

MODERAÇÃO: Título ajustado!

[quote=Victor Maehira]Bom dia!
Eu também confundo esses termos:

  • JPA é a especificação (Java Persistence API)
  • Hibernate é uma implementação da JPA
    A confusão surge pois o Hibernate surgiu antes da especificação JPA. A Sun se baseou no Hibernate para elaborar a especificação.[/quote]

A sakei…valew!!!

Só completando…

Você pode muito bem usar Hibernate sem estar utilizando a especificação JPA.
Assim, além do Hibernate ser uma especificação da JPA, ele é um framework de persistência independente.
Por padrão, o Hibernate é apenas um framework (seu pacote CORE). Portanto se você quer utilizá-lo como uma implementação do JPA, você deve utilizar juntos o pacote EntityManager + Annotations.

Uma grande diferença que existe no Hibernate e não existe na especificação JPA, são os Critérias (que me parecem que serão adicionados no JPA 2).

Agora na minha humilde opinião, se você está em dúvida em qual usar, eu optaria pela especificação JPA. Porque além de ser uma especificação oficial, você pode usar ela de forma MUITO simples com components Session Beans (EJB).

[quote=ManchesteR]Só completando…

Você pode muito bem usar Hibernate sem estar utilizando a especificação JPA.
Assim, além do Hibernate ser uma especificação da JPA, ele é um framework de persistência independente.
Por padrão, o Hibernate é apenas um framework (seu pacote CORE). Portanto se você quer utilizá-lo como uma implementação do JPA, você deve utilizar juntos o pacote EntityManager + Annotations.

Uma grande diferença que existe no Hibernate e não existe na especificação JPA, são os Critérias (que me parecem que serão adicionados no JPA 2).

Agora na minha humilde opinião, se você está em dúvida em qual usar, eu optaria pela especificação JPA. Porque além de ser uma especificação oficial, você pode usar ela de forma MUITO simples com components Session Beans (EJB).

[/quote]

Cara valew sua opinião é de grande importáncia…thank’s…

Acho que pode te ajudar http://code.google.com/p/jpa-component/wiki/Doc_PT_Br

Parceiro, esse foi pros favoritos…

Abs. :smiley:

Na minha opinião, tente entender o conceito básico da especificação. Se você for direto para as implementações, você pode acabar se frustrando e desistindo.

Dê uma lida nos tutoriais oficiais. Veja como as coisas são feitas, pois assim você vai ter propriedade para escolher por si só qual implementação é a ideal para sua demanda.

Segue alguns links úteis:

http://java.sun.com/javaee/5/docs/tutorial/doc/bnbpz.html

[quote=marciobarroso]Na minha opinião, tente entender o conceito básico da especificação. Se você for direto para as implementações, você pode acabar se frustrando e desistindo.

Dê uma lida nos tutoriais oficiais. Veja como as coisas são feitas, pois assim você vai ter propriedade para escolher por si só qual implementação é a ideal para sua demanda.

Segue alguns links úteis:

http://java.sun.com/javaee/5/docs/tutorial/doc/bnbpz.html
[/quote]

Concordo contigo Marcio… mais por euquanto estou só estudando, até pq a empresa que estou deixou um pouco de lado a idéia de fábrica de software… Mais rapaziada valew pelos toques.

Bom dia!
Eu também confundo esses termos:

  • JPA é a especificação (Java Persistence API)
  • Hibernate é uma implementação da JPA
    A confusão surge pois o Hibernate surgiu antes da especificação JPA. A Sun se baseou no Hibernate para elaborar a especificação.