Java : Persistencia
¿Que es Persistencia?
La Persistencia cubre varios significados dependiendo en donde la estemos usando.
En Java la persistencia obedece a la capacidad de almacenamiento de los datos de una aplicación en algún medio físico como Bases de Datos, Archivos de Texto, etc.
API JPA
La API de Java Persistence (JPA) se puede entender como un framework para trabajar con Bases de Datos relacionales, la cual está compuesta por 3 partes:
- El Paquete javax.persistence
- El Lenguaje de Consultas de Persistence conocido como JPQL
- Los Metadatos para los Objetos y sus Relaciones, los cuales nos permiten definir los registros de las estidades y las relaciones entre estas.
Definiciones
- Entidad: Una Entidad en JPA corresponde a una tabla en una Bases de Datos
- Instancias: Una instancia de una entidad corresponde a un registro o fila de una tabla de la BD
- Metadatos: Generalmente las tablas en una BD están relacionadas entre sí, por lo tanto las entidades en JPA también están relacionadas entre sí y dicha relación se logra con los Metadatos los cuales se pueden definir mediante archivos XML o directamente en el código fuente.
Lenguaje de Consultas JPQL
Este lenguaje obedece a una estructura similar al lenguaje estándar SQL diferenciandolo en que las operaciones que se realizan no son hacia la BD sino hacia las entidades.
Entidad
Una tabla que hayamos definido como entidad en nuestra aplicación contará con 3 características especiales:
- Persistencia: Los datos los podemos almacenar y recuperar de la BD.
- Identidad: Cada instancia de la entidad es única en la app.
- Soporte Transaccional: Las operaciones CRUD (Create, Read, Update, Delete) se realizan en forma transaccional.
Fuentes | http://www.slideshare.net/jamslug/introduccin-a-java-persistence-api