// acesse a lista
Collection<Usuario> lista = x.listaUsuario();
// obs: quando se trata de uma função, costuma-se
// usar a primeira palavra começando em minusculo
// itere sobre a lista , em outras palavras, percorra a lista ultilizando seu iterador
for (Iterator<Usuario> i = lista.iterator(); i.hasNext(); )
{
// pegue elemento por elemnto da lista a cada iteração do laço
Usuario u = i.next();
// use e abuse
system.out.println(u.getName());
}
Hibernate: /* from Usuario */ select usuario0_.id as id1_, usuario0_.nome as nome1_, usuario0_.rg as rg1_, usuario0_.cpf as cpf1_ from usuario usuario0_
que vacilo hein…
isso acontece pq sua entidade é herdada pelo javassit, daí seu getters está sobrescritos
sugestão: crie um construtor de cópia e use uma entidade desanexada
public class Usuario
{
public Usuario(Usuario u)
{
nome = u.nome;
cpf = u.cpf;
}
}
...
// o for convencional ou o foreach fica por gosto de fregês
for (Iterator<Usuario> i = lista.iterator(); i.hasNext(); )
{
// agora vc terá um pobjeto "puro"
Usuario u = new Usuario(i.next());
System.out.println(u.getName());
}
procure pela documentação do hibernate se existe algum recurso q faça isso, quem sabe já possui… mas eu nunca precisei
Eu testei todos os modos e nao consegui resolver infelizmente.
Deu certo uma gambiarra que eu fiz, trocando o metodo do DAO de Query select = sessao.createQuery(from Usuario);
para Criteria select = sessao.createCriteria(Usuario.class);
Obrigado a todos
Agora vou tentar achar como faço para listar baseado em um parametro