2010-08-19 32 views

Respuesta

14

Con un contenedor Java EE 5, se obtiene JPA 1.0 (especificado en el JSR 220 - Enterprise JavaBeans, Version 3.0).

Con un contenedor Java EE 6, obtiene JPA 2.0 (especificado en el JSR 317: Java Persistence 2.0 que ahora está dedicado).

Y si usted está proporcionando su propia implementación de la APP, así, que depende de la aplicación y la versión que proporciona :)

Estas son algunas de las implementaciones de JPA 2.0 y sus respectivas versiones:

  • EclipseLink 2.0+
  • Hibernate EntityManager 3.5+
  • OpenJPA 2.0+
  • DataNucleus 2.1.0+
+0

¿Cómo puedo encontrar esta especificación independiente en JEE6? – Nav

+0

@Navid No estoy seguro de que esto sea lo que estás buscando, pero agregué algunos enlaces a las especificaciones. –

+0

¿Los proveedores de persistencia implementan JPA? Si es así, entonces no puedo usar solo JPA porque es solo API, ¿verdad? y tengo que usar una de las implementaciones de JPA 2.0? – Nav

0

Ningún JPA y EJB no están relacionados en absoluto, son totalmente independientes. JPA no está construido en EJB. El javaee-api 6 que es el contenedor JAVA EE 6 le da el código para EJB 3 y JPA 2. +. Para implementar EJB3 puede usar weblogic o JBoss o cualquier contenedor de aplicaciones. Para implementar JPA, puede utilizar Hibernate, OpenJPA, etc.

<dependency> 
    <groupId>javax</groupId> 
    <artifactId>javaee-api</artifactId> 
    <version>6.0</version> 
</dependency> 
Cuestiones relacionadas