Opa, pessoal!
Tentei usar o LIKE com JPQL, mas não descobri como formar a query corretamente, tentei de alguns jeitos, como:
String jpql = "SELECT p FROM Produto p WHERE p.nome like %:nome%";
Mas dava erro e não compilava.
Só consegui passando o % pelo setParameter:
public List<Produto> findByNome(String nome) {
String jpql = "SELECT p FROM Produto p WHERE p.nome like :nome";
return em.createQuery(jpql, Produto.class)
.setParameter("nome", "%" + nome + "%")
.getResultList();
}
Assim, foi! Mas não teria como fazer direto na string da query?