lunes, 31 de agosto de 2015

Mapeo complejo JPA de tablas relacionadas - VII

Finalizamos el tutorial con los resultados:

RESULTADOS POR PANTALLA


Ejecutamos la aplicación para testear si funciona, y estos son los resultados que debería mostrar la aplicación al ejecutarse:

Lista de empleados
----------------------------
Empleado: Felipe Mendez - DNI: 50999999E - Puesto trabajo: Operario - Centro: Central
Empleado: Andrés Gómez - DNI: 22222222J - Puesto trabajo: Operario - Centro: Almacén
Empleado: Luis Subirana - DNI: 37988123E - Puesto trabajo: Administrativo - Centro: Central

Lista de empleados de la Central
----------------------------
Empleado: Felipe Mendez - DNI: 50999999E - Puesto trabajo: Operario - Centro: Central
Empleado: Luis Subirana - DNI: 37988123E - Puesto trabajo: Administrativo - Centro: Central

Lista de Nominas
----------------------------
Nomina de Felipe Mendez - Periodo 5 - Salario Bruto: 1750.0 - Retenciones: 358.75 - Neto a cobrar: 1391.25
Nomina de Andrés Gómez - Periodo 5 - Salario Bruto: 1450.0 - Retenciones: 333.5 - Neto a cobrar: 1116.5
Nomina de Luis Subirana - Periodo 5 - Salario Bruto: 1700.0 - Retenciones: 391.0 - Neto a cobrar: 1309.0
Nomina de Felipe Mendez - Periodo 6 - Salario Bruto: 2750.0 - Retenciones: 563.75 - Neto a cobrar: 2186.25
Nomina de Andrés Gómez - Periodo 6 - Salario Bruto: 2250.0 - Retenciones: 517.5 - Neto a cobrar: 1732.5
Nomina de Luis Subirana - Periodo 6 - Salario Bruto: 2800.0 - Retenciones: 644.0 - Neto a cobrar: 2156.0

Lista de nominas de la Central
----------------------------
Nomina de Felipe Mendez - Periodo 5 - Salario Bruto: 1750.0 - Retenciones: 358.75 - Neto a cobrar: 1391.25
Nomina de Luis Subirana - Periodo 5 - Salario Bruto: 1700.0 - Retenciones: 391.0 - Neto a cobrar: 1309.0
Nomina de Felipe Mendez - Periodo 6 - Salario Bruto: 2750.0 - Retenciones: 563.75 - Neto a cobrar: 2186.25
Nomina de Luis Subirana - Periodo 6 - Salario Bruto: 2800.0 - Retenciones: 644.0 - Neto a cobrar: 2156.0

Lista de nominas de un trabajador
----------------------------
Nomina de Felipe Mendez - Periodo 5 - Salario Bruto: 1750.0 - Retenciones: 358.75 - Neto a cobrar: 1391.25
Nomina de Felipe Mendez - Periodo 6 - Salario Bruto: 2750.0 - Retenciones: 563.75 - Neto a cobrar: 2186.25

Lista de nominas de un trabajador
----------------------------
Nomina de Felipe Mendez - Periodo 5 - Salario Bruto: 1750.0 - Retenciones: 358.75 - Neto a cobrar: 1391.25
Nomina de Felipe Mendez - Periodo 6 - Salario Bruto: 2750.0 - Retenciones: 563.75 - Neto a cobrar: 2186.25

Lista de nominas del mes junio
----------------------------
Nomina de Felipe Mendez - Periodo 6 - Salario Bruto: 2750.0 - Retenciones: 563.75 - Neto a cobrar: 2186.25
Nomina de Andrés Gómez - Periodo 6 - Salario Bruto: 2250.0 - Retenciones: 517.5 - Neto a cobrar: 1732.5
Nomina de Luis Subirana - Periodo 6 - Salario Bruto: 2800.0 - Retenciones: 644.0 - Neto a cobrar: 2156.0

Lista de nominas por categoria profesional Operario
----------------------------
Nomina de Felipe Mendez - Periodo 5 - Salario Bruto: 1750.0 - Retenciones: 358.75 - Neto a cobrar: 1391.25
Nomina de Andrés Gómez - Periodo 5 - Salario Bruto: 1450.0 - Retenciones: 333.5 - Neto a cobrar: 1116.5
Nomina de Felipe Mendez - Periodo 6 - Salario Bruto: 2750.0 - Retenciones: 563.75 - Neto a cobrar: 2186.25
Nomina de Andrés Gómez - Periodo 6 - Salario Bruto: 2250.0 - Retenciones: 517.5 - Neto a cobrar: 1732.5


CONCLUSIONES

El mapeo ha sido correcto y ha funcionado de la forma esperada.

Podríamos haber realizado lo mismo y de manera más eficiente con una mejor arquitectura de la base de datos; y también podríamos mejorar nuestra capa de Persistencia. Pero se trata de un programa muy básico en donde hemos realizado el mapeo de datos de un modelo relativamente complejo.

En este ejemplo hemos aprendido a mapear un OneToOne bidireccional, y como influye este mapeo en las tablas de la base de datos. También hemos mapeado un ManyToOne bidireccional y otro unidireccional y sus consecuencias. También hemos accedido y manejado la misma información desde diferentes objetos aprovechándonos de estas propiedades.

Este ejemplo nos ha mostrado algunas de las posibilidades de mapeo  y de manejo de bases de datos con JPA.

¡¡ Hasta pronto, jabatos !!

No hay comentarios:

Publicar un comentario