JPA e EJB3

A JPA agora é o EJB 3???

Na Revista Java Magazine (edição 44), na folha 27, informa que o JPA é parte ddo Padrão EJB 3.0

Os caras dividiram o antigo EJB em 2: EJB (Session Bean e Message) e JPA (Entity Bean). Nesse ultimo, é uma aimplementação de referencia. Com isso, os diversos fabricantes podem implementar seus próprios frameworks, como o Toplinks da Oracle e o Hibernate JPA.
Mas tecnicamente falando, o JPA é do EJB3. Mas não há a necessidade de vc ter um container EJB para rodar o JPA. Vc pode ter uma aplicação JSE (Desktop ou web) usando essa tecnologia.

ficou fácil de confundir isso.
A JPA 2.0 terá o nome desacoplado do EJB, evitando estas dúvidas…

Apenas ressaltando o que o colega disse, você pode usar JPA sem EJB.

Eu estou começando com persistência agora, e tô fazendo uma baita confusão. Vou postar aki o que estou entendendo e vcs me corrijam caso eu esteja errado:

JPA -> A API de persistência do Java, que a partir da versão 5.0, adotou o conceito de Annotations. O Hibernate e TopLink implementam JPA, logo os doiis frameworks têm o mesmo propósito.

Obs.: Para usar o conceito de Annotations no Hibernate, é necessário ter as versões Core e Annotations q podem ser baixadas no próprio site do hibernate.

E o EJB, para uma aplicação Desktop (Java SE), onde entra? não consigo entender.

Mto Grato Pessoal

JPA -> A API de persistência do Java, que a partir da versão 5.0, adotou o conceito de Annotations. O Hibernate e TopLink implementam JPA, logo os doiis frameworks têm o mesmo propósito.

Obs.: Para usar o conceito de Annotations no Hibernate, é necessário ter as versões Core e Annotations q podem ser baixadas no próprio site do hibernate.

E o EJB, para uma aplicação Desktop (Java SE), onde entra? não consigo entender.

JPA atualmente está atrelada à especificação do EJB 3, mas terá “vida
própria” em breve.

O Hibernate e o TopLink contém implementações da JPA, ou seja, JPA é apenas o “livro de receita” que tanto um quanto outro cobrem. (porém existem extensões proprietárias, coisas além da receita de bolinho de fubá).

Anotações não tem nada a ver. É uma nova abordargem que surgiu a partir do Java 5. Hibernate Annotations é apenas um componente com extensões para a JPA entre outras coisas que são feitas através de anotações.

JPA pode ser usado com Java SE também, não precisa você estar em um Container EJB para utilizara JPA.

O resto o Google te fala :slight_smile: