Alternativas

JPQL

Java Persistence Query Language

Introdução

JPA Consultas - JPQL

JPQL é uma linguagem de consultas orientada a objetos, baseada na estrutura das entidades Java, em vez das tabelas do banco de dados. Ela proporciona uma maneira mais flexível e independente de banco para escrever consultas, permitindo que você trabalhe com as entidades e seus atributos diretamente, sem se preocupar com a sintaxe SQL. JPQL é ideal quando a portabilidade e a integração com o modelo de objetos são essenciais.

Para que você possa acompanhar este exercício, é necessário que você esteja realizando-os em um projeto Spring Boot com dependencias do Spring Data JPA. Consulte nosso vídeo JPA Setup - com Spring Boot
ClienteConsultaJPQL.java

import jakarta.persistence.*;
import org.springframework.stereotype.Service;
import java.util.List;

@Service
public class ClienteConsultaJPQL {
    @PersistenceContext
    private EntityManager entityManager;
}

Casos de Uso

  1. Todos os clientes, sem filtros, ordenados por nome
public List<Cliente> consultarClientesOrdenadosPorNome() {
    // Consulta JPQL para buscar todos os clientes ordenados por nome
    String jpql = "SELECT c FROM Cliente c ORDER BY c.nome";
    TypedQuery<Cliente> query = entityManager.createQuery(jpql, Cliente.class);
    return query.getResultList();
}
Quando pensarmos em usar JPQL através do método createQuery, é importante considerar que toda consulta é sobre a entidade e jamais considerando a tabela na base de dados.