51 - Like

O operador LIKE é utilizado em consultas para buscar registros que contenham padrões de texto, permitindo realizar comparações parciais em campos do tipo String. Ele é amplamente utilizado para localizar informações quando não se conhece o valor exato a ser pesquisado.

Exemplo de método no repositório: public List findByNomeLike(String nome);

Exemplo de rota que referencia o método findByNomeLike(String nome):

@GetMapping("/pessoas")
    public List buscarPessoasPorNome(@RequestParam String nome) {
        return pessoaRepositorio.findByNomeLike("%" + nome + "%"); // Usando LIKE para buscar por nome
    }

Embora o LIKE seja um operador típico de SQL, no Spring Data JPA ele é interpretado por meio de palavras-chave específicas nos nomes dos métodos de repositório, como veremos a seguir.

Palavras-chave: Containing, StartsWith e EndsWith

Ao trabalhar com o Spring Data JPA, é possível usar variações do operador LIKE diretamente no nome dos métodos, facilitando buscas parciais sem a necessidade de escrever SQL manualmente. As principais palavras-chave utilizadas são:

  • Containing: busca por registros que contenham a sequência informada.
  • StartsWith: busca por registros que comecem com a sequência informada.
  • EndsWith: busca por registros que terminem com a sequência informada.

Exemplos de métodos com essas palavras-chave:

  • findByNomeContaining(String texto)
  • findByCidadeStartsWith(String prefixo)
  • findByCidadeEndsWith(String sufixo)

Essas palavras-chave tornam a busca por textos mais flexível e prática, aproveitando a capacidade do Spring Data JPA de interpretar os nomes dos métodos como consultas dinâmicas.

Clique aqui para se tornar membro do canal