Jpa- libs necessárias

Para fazer uma aplicação usando jpa sem usar um servidor de aplicação jee, se quais libs eu necessito?

Eu estou usando a ejb3-persistence.jar e o driver do banco, é necessáiio mais algma?

Valew

Primeiro você tem que escolher o provider para o JPA, eu conheço apenas o Hibernate e o TopLink, recomendo o Hibernate. Uso e abuso dele e ele não reclama.

Mais vamos as libs, usando Hibernate é claro:

-ejb3-persistence.jar
-hibernate3.jar
-hibernate-annotations.jar
-hibernate-commons-annotations.jar
-hibernate-entitymanager.jar
-hibernate-validator.jar

Se não estou esquecendo de nenhuma são essas as principais…

Valew pela resposta, mas tenho 2 dúvidas:

1.Desculpe a minha ignorância, mas o que seria esse provider?

2.Com o pacote ejb3-persistence.jar ja consigo fazer todoas as anotações, para que serviria os outros pacotes?

Valew

JPA é uma especificação, ou seja, um conjunto de Interfaces. O provider é o conjunto de classes que implementam essas interfaces e que realmente fazem o trabalho de persistência. A vantagem em se usar especificação ao envés das classes concretas é que se pode trocar a qualquer hora (mais isso não vem ao caso).

Sim você consegue fazer todas as anotações, referentes a especificação JPA, porém o Hibernate te dá outras vantagens em relação ao JPA, como trabalhar com um EntityManager Próprio e outras coisas a mais, como algumas anotações uteis e etc…