Entradas

Mostrando las entradas de octubre, 2019

JPA-Hibernate + POJO + Projection + ConstructorResult + NativeQuery + Testcontainers + PostgreSQL

Imagen
En esta ocasión mostraré un ejemplo usando Java SE 11 de como mapear una clase no entidad (un POJO) a partir de los datos que existen en la base de datos y que representan a una entidad utilizando ConstructorResult, Projection y una construcción "manual" con JPA. Las pruebas serán realizadas usando Testcontainers junto a Postgresql como base de datos. El procedimiento es el siguiente (se omiten los metodos/imports/anotaciones que no son relevantes y usaré lombok solo para getter/setter): 1- La Entidad Representa la entidad que mantendrá datos en la base de datos y de la cual extraeremos algunos de sus campos para nuestro pojo. @Entity @Table(schema = "jpa", name = "persona") public class Persona { @Id private int id; private String nombre; private String apellido; } 2- El POJO Requiere tener un constructor con los argumentos que la query utilizará: public class PersonaPOJO { private String nn; private String a...