Queries Jpa
Queries Jpa

Queries Jpa

Query Simple:
Esto retorna el cliente completo con todos sus campos, ordenados por nombre_contacto

@Query("FROM Cliente order by nombre_contacto")
public List<Cliente> showAll();

Traer solo parte de una clase, retorna un arreglo de tipo Object, Object[]:

@Query("SELECT id_cliente, nombre_contacto, direccion FROM Cliente order by nombre_contacto")
public List<Object[]> showAll();

Traer solo parte de una clase, no todos los atributos:
Ejemplo: Si mi entidad Cliente tiene 10 atributos y yo solo quiero traer un objeto DTO que tenga 3 campos, entonces tengo que agregar el constructor en el DTO para esos 3 campos, y necesito la ruta completa de mi DTO, com.edutecno.examen.ClienteDTO.

@Query("SELECT new com.edutecno.examen.api.dto.ClienteDTO(i.id_cliente, i.nombre_contacto, i.direccion) FROM Cliente i order by i.nombre_contacto")
public List<ClienteDTO> showAll();