Recuperar Lista de objetos da Sessão do Hibernate

2 respostas
kikostyle

Olá caras eu tenho o seguinte problema, eu preciso saber como recuperar uma lista de objetos da sessão do hibernate.
Já pesquisei e encontrei o getSession().get(Class clazz, Serialisable id) ou seja, esse método tráz somente um objeto.
O problema é que eu não tenho o id para passar como parâmetro. Debugando eu vi que o meu objeto está em um hashmap lá dentro da sessão mas não encontrei nenhuma outra forma de recuperalo.

2 Respostas

normandesjr

Amigo você pode recuperar pelo mínimo de 3 formas diferentes: SQL, HQL e Criteria.

A primeira é a tradicional, ou seja, você obtem os valores através de SQL normal, para fazer isso:

SQLQuery sql = session.createSQLQuery("select id, nome, telefone from t_pessoa");
List<Object[]> objs = sql.list();

A segunda maneira é através da HQL, onde você faz as consultas pensando no objeto do seu domínio e não nas tabelas propriamente ditas:

Query query = session.createQuery("from Pessoa");
List<Pessoa> list = query.list();

E a terceira e na minha opinião a forma mais elegante, utilizando Criteria:

Criteria criteria = session.createCriteria(Pessoa.class);
List<Pessoa> list = criteria.list();

Agora amigo é estudar isso ae… HQL e Criteria tem diversas opções de consultas! Existem diversos tutoriais na net a respeito.

Abraços!

kikostyle

Vlw cara, eu vou tentar depois digo se deu certo.

Criado 25 de outubro de 2007
Ultima resposta 26 de out. de 2007
Respostas 2
Participantes 2