Seguir a Miguel Gomez Cuesta en Twitter Seguir a Miguel Gomez Cuesta en Linkedin Seguir a Miguel Gomez Cuesta en Google+ Contactar a Miguel Gomez Cuesta por Correo Electrónico

domingo, 20 de diciembre de 2015

JPA - Lenguaje JPQL II (continuación)

Tipos de Sentencias:

  1. SENTENCIAS SELECT
  2. SENTENCIAS AGGREGATE
  3. SENTENCIAS UPDATE
  4. SENTENCIAS DELETE

Seguimos aprendiendo sobre el resto de sentencias que podemos encontrarnos: Aggregate, Update y Delete

JPA - Lenguaje JPQL


El Java Persistence Query Language (JPQL) es el lenguaje estándar de consultas de JPA. Es un lenguaje diseñado para combinar la simplicidad de la semántica y sintaxis del lenguaje SQL con la expresividad de un lenguaje orientado a objetos.

Introducción:

JPQL no es SQL. A pesar de las similitudes en los dos lenguajes en términos de estructura y palabras clave hay diferencias importantes.

Las similitudes en los lenguajes son intencionadas ya que permite a los desarrolladores con conocimientos de SQL que la curva de aprendizaje sea menor, sin embargo, la naturaleza orientada a objetos del lenguaje JPQL requiere un manera de pensar diferente.

JPQL es un lenguaje de consulta de entidades/objetos en lugar de tablas y registros. El lenguaje nos proporciona una manera de expresar consultas en términos de entidades y sus relaciones operando sobre las entidades en lugar de sobre el modelo de BBDD.

JPQL es portable, es decir, puede ser traducido al dialecto SQL utilizado por la mayoría de BBDD


JPQL permite abstraernos de la BBDD, es decir, las consultas son escritas sobre el modelo de entidades/objetos sin necesidad de conocer como estas son mapeadas a la BBDD.


domingo, 22 de noviembre de 2015

JPA - Las Relaciones

Conceptos fundamentales: 

Antes de comenzar y para entender bien las diferentes relaciones entre entidades debemos tener claro los siguientes conceptos.

Rol: Define cual de las entidades de la relación es origen y cuál es la entidad destino.

Dirección: Define si la relación entre dos entidades es unidireccional o bidireccional. Es decir, si existe la relación en ambos sentidos o solamente en uno de ellos y en este segundo caso identifica a la entidad origen y destino.

Cardinalidad: Indica la cantidad de entidades que existen en cada lado de la relación. Puede ser uno o muchos

Ordinalidad: Indica si un atributo es obligatorio o opcional

Columnas de Unión: En términos de base de datos una relación entre dos tablas significa que una tabla referencia a otra tabla. Una columna que referencia a una clave primaria de otra tabla se denomina “clave externa”.
En JPA estas columnas las llamamos “columnas de unión” y la anotación @JoinColum es utilizada para configurar este tipo de columnas

viernes, 30 de octubre de 2015

Introducción a JPA

¿Que es JPA?

JPA (API de Persistencia en Java) es el estándar en Java que define una abstracción que nos permite realizar la integración entre el sistema orientado a objetos de Java y el sistema relacional de nuestra base de datos. Para más detalles consultar la especificación JPA – JSR 338

JPA realiza por nosotros toda la conversión entre nuestros objetos y las tablas de una base de datos. Esta conversión se llama ORM (Mapeo Relacional de Objetos) y puede configurarse a través de metadatos (XML) o anotaciones.

JPA establece un interface común que es implementada por un “JPA Provider” concreto. De modo que es el Proveedor JPA el que realiza el trabajo. Entre los proveedores JPA más conocidos se encuentran Hibernate, Eclipse Link, TopLink, OpenJPA

Diagrama de capas de una aplicación Web

Entradas populares