Como fazer navegação pelos registros com Hibernate

4 respostas
rafaelbtz

Estou começando com o desenvolvimento em Swing e Hibernate, e preciso construir quatro botões de navegação pelos registros em telas de cadastro, os botões são <<PRIMEIRO <ANTERIOR PRÓXIMO> ÚLTIMO>>.

Quanto aos botões tudo tranquilo mas eu to precisando de uma ajuda pra fazer o código que executa as consultas… Não sei se é melhor fazer algum HQL para cada clique ou se eu carrego todo o cadastro em memória e vou navegando sobre esses registros já em memória…

Alguem tem alguma idéa de como eu posso fazer isso de uma maneira que tenha uma boa performance…

Se a solução melhor for carregar tudo em memória como eu posso fazer para que a nevegação seja para todos os lados (primeiro próximo anterior e último), não sei como fazer isso…

Valeu pela ajuda galera…

4 Respostas

Mauricio_Linhares

Usando isso:

http://hibernate.org/hib_docs/v3/api/org/hibernate/Query.html#setMaxResults(int)

E isso:

http://hibernate.org/hib_docs/v3/api/org/hibernate/Query.html#setFirstResult(int)

rafaelbtz

Mauricio, valeu eu dei uma lida e entendi + ou - que isso é pra fazer paginação dos resultados… mas ainda não consegui resolver meu problema de como fazer… Vou dar um exemplo da aplicação pra ver se tem como alguem me dar mais uma ajudinha…

O Usuario entra na tela de cadastro e na tela deve estar exibido o ultimo registro, então ele clica para ir para o primeiro, depois clica para ir para o próximo registro, depois para o anterior e a tela de cadastro tem que ir exibindo os registros conforme os cliques.

Como eu faço para navegar pelos registros, vou ter que ir criando HQL’s conforme os cliques e ir buscar esses registros no banco a cada clique, ou passo tudo para um LinkedList e vou navegando pelo linked acho que isso ocuparia muita memória conforme o cadastro…

Se alguem puder me dar uma ajuda, se tiver alguns exemplos, porque eu estou chegando agora nesse mundo do Hibernate e não sei muito bem como usua-lo, antes eu usava um ResultSet e Habilitava ele pra navegar pra todo lado dai eu ia navegando mas agora não sei como fazer…

Valeu

M

Eu estou com esse mesmo problema… Será que alguem me ajuda…

Eu usava a navegação do ResultSet next(), previous(), etc…
mas agora preciso fazer em Hibernate e não sei muito bem como fazer isso com Hibernate…

Obrigada. :lol:

Mauricio_Linhares

Olha, se no result set vocês navegavam usando next e previous, a única diferença é que agora vocês navegam em coleções, o que deveria ser muito mais fácil.

Ainda não entendi qual o problema.

Criado 30 de maio de 2005
Ultima resposta 11 de jun. de 2005
Respostas 4
Participantes 3