Java Persistence API
Java Persistence API, más conocida por sus siglas JPA, es una API de persistencia desarrollada para la plataforma Java EE.
Java Persistence API | ||
---|---|---|
Información general | ||
Desarrollador | Sun Microsystems | |
Información técnica | ||
Programado en | Java | |
Versiones | ||
Última versión estable | 3.2.020 de septiembre de 2024 | |
Enlaces | ||
Maneja datos relacionales en aplicaciones usando la Plataforma Java en sus ediciones Standard (Java SE) y Enterprise (Java EE).
La JPA se origina a partir del trabajo del JSR 220 Expert Group el cual correspondía a EJB3. JPA 2.0 sería el trabajo del JSR 317 y posteriormente JPA 2.1 en el JSR 338.
Persistencia en este contexto cubre tres áreas:
- La API en sí misma, definida en el paquete
javax.persistence
- El lenguaje de consulta Java Persistence Query Language (JPQL).
- Metadatos objeto/relacional.
El objetivo que persigue el diseño de esta API es no perder las ventajas de la orientación a objetos al interactuar con una base de datos (siguiendo el patrón de mapeo objeto-relacional), como sí pasaba con EJB2, y permitir usar objetos regulares (conocidos como POJO).
Historia
editarLa fecha del lanzamiento final de las especificaciones del JPA 1.0 fue el 11 de mayo de 2006. Esta fue parte del Proceso de comunidad Java (Java Community Process). Las especificaciones de la versión JPA 2.0 fueron lanzadas el 10 de diciembre de 2009. Mientras las de la JPA 2.1 se lanzó el 22 de abril de 2013.
Entidades (Entities)
editarUna entidad de persistencia (entity) es una clase de Java ligera, cuyo estado es persistido de manera asociada a una tabla en una base de datos relacional. Las instancias de estas entidades corresponden a un registro (conjunto de datos representados en una fila) en la tabla. Normalmente las entidades están relacionadas con otras entidades, y estas relaciones son expresadas a través de metadatos objeto/relacional. Los metadatos del objeto/relacional pueden ser especificados directamente en el fichero de la clase, usando las anotaciones de Java (annotations), o en un documento descriptivo XML, el cual es distribuido junto con la aplicación.
Implementaciones
editar- Hibernate
- ObjectDB
- TopLink
- CocoBase
- EclipseLink
- OpenJPA
- Kodo
- DataNucleus, antes conocido como JPOX
- Amber
Frameworks
editar- OpenXava: Motor de Aplicación JPA: Para el desarrollo rápido de aplicaciones desde entidades JPA.
Véase también
editarEnlaces externos
editar- Tutorial de introducción a JPA 2.0 Archivado el 7 de diciembre de 2013 en Wayback Machine.