Pessoal, tenho um tabela com uns 10 mil registros, quando eu busco todos estes registros no banco de dados eu os apresento na tela de forma paginada, de dez em dez por exemplo, para tanto, vejo que é desnecessário buscar os 6 mil registros todos de uma vez se só vou apresentar dez, meu desempenho na primeira visualização do resultado da pesquisa vai lá em baixo, enfim, estou utilizando o hibernate e gostaria de saber se existe uma maneira de resolver este problema de forma por exemplo a buscar os demais registros só quando necessário, ou seja, só quando exibi-los na paginação.
Pensando bem, acho até que o problema está mais na forma de implementação da paginação não é mesmo, pois utilizo aquelas que percorrem um array já preenchido, não vai até o banco em cada nova pagina para buscar os novos registros, mas mesmo assim gostaria da opiniao de voces, quem sabe o hibernate não ofereça uma ajuda a este tipo de situação, buscando os registros somente quando desejo apresentá-los na tela.
Desde já agradeço a atenção de todos.
Busca parcial de resultados no hibernate
2 Respostas
spranta, se não me engano, tem algum método na Criteria do Hibernate que possibilita a paginação dos dados, dá uma olhada na documentação, mais tem alguma coisa sim.
Já utilizei em um projeto, mais infelizmente não lembro o nome do método, mais se não me engano, está na API Criteria
Olá,
use os métodos setFirstResult(int); e setMaxResults(int);
Por exemplo, para a primeira página você passa
setFirstResult(0);
setMaxResults(10);
na segunda
setFirstResult(10);
setMaxResults(20);
e assim por diante.
[]´s
Criado 23 de fevereiro de 2007
Ultima resposta 23 de fev. de 2007
Respostas 2
Participantes 3