Dúvida no uso de QUERY

2 respostas
guiJava

Olá pessoal,

Sou estudante e estou fazendo meu TCC, onde estou desenvolvendo um sistema (com orientação de um professor), e preciso fazer uma pesquisa de cliente e criar uma lista. Onde a lista deve conter o todos os clientes que tenham aquele nome que foi passado como referencia.

Então:

O usuário digita:

João

Então o método passará todos os clientes quem tem João em seu nome.
Ex.:

João Paulo Oliveira
Márcio João de Castro
Joaquim João de Farias

O professor fez um método que passa todos os cliente do banco de dados (código abaixo).

public List<Cliente> listaCliente(){
        Query query = em.createNamedQuery("Cliente.findAll",Cliente.class);
       
        return query.getResultList();
    }

Ele falou que para lista por nome o código seria semelhante, mas eu ainda não consegui fazer. Então quem puder me ajudar fornecendo exemplode códigos, artigos, livros eu agradeço muito.

Desde já agradeço ajuda de vocês.

2 Respostas

charles.eduardo

Cara não estou usando JPA nas atividades não, porem acredito que pelo codigo que você passou de seu professor, este artigo http://uaihebert.com/?p=1555 do uiaHebert, ajuda a solucionar seu problema. Boa sorte, eu tambem preciso de muita!!!

guiJava

Pessoal já consegui resolver.

Eu fiz o seguinte:

public List<Cliente> listaClientePorNome(String nome){
        Query query = em.createQuery("SELECT c FROM Cliente c WHERE c.nome LIKE '%"+nome+"%'",Cliente.class);
        List<Cliente> lista = new ArrayList<Cliente>();
        for(Object o:query.getResultList()){
            lista.add((Cliente)o);
        }
        return lista;
    }

charles.eduardo, obrigado pelo artigo que você me indicou. Ele não me ajudou totalmente mas ensinou-me coisas que precisava.

Criado 15 de novembro de 2012
Ultima resposta 15 de nov. de 2012
Respostas 2
Participantes 2