Implementar paginação. (Struts, Hibernate, Firebird...)

Boa noite a todos, estou iniciando em J2EE e gostaria de saber de vocês sobre como implementar uma paginação, tenho um pagina de pesquisa onde a lista de resultado pode ser muito grande e gostaria de dividir esta lista como é feita em paginas de busca…

Estou utilizando hoje em meu projeto de estudo Hibernate, Struts e Firebird, alguém tem o caminho das pedras ??? :slight_smile:

[quote=smorigo]Boa noite a todos, estou iniciando em J2EE e gostaria de saber de vocês sobre como implementar uma paginação, tenho um pagina de pesquisa onde a lista de resultado pode ser muito grande e gostaria de dividir esta lista como é feita em paginas de busca…

Estou utilizando hoje em meu projeto de estudo Hibernate, Struts e Firebird, alguém tem o caminho das pedras ??? :-)[/quote]

O codigo do JForum (este forum que nos estamos utilizando) tem esse recurso. Eh open-source - voce pode olhar no CVS como eh feito e fazer a tua maneira ou entao usar o proprio codigo do JForum (respeitando a licenca, claro).

Sobre os conceitos, a ideia eh relativamente simples:

  • pagina 1: seila?pg=1
  • pagina 2: seila?pg=2

Se o numero de registros por pagina que voce quer exibir for “qtde” na consulta voce pesquisa os registros de ((pg-1)qtde)+1 ate pgqtde (pg e qtde >= 1).

Exemplo:

  • pg 1, 10 registros por pg: de 1 ate 10.
  • pg 2, 10 registros por pg: de 11 ate 20.
  • etc.

Marcio Kuchma

Kra,

No Sourceforge tem um componente chamado display tag, vc joga uma collection nele e ele se vira com o resto.
Bem bacana…

:arrow: Dá uma olhada lá: http://displaytag.sourceforge.net/

Um abraço kra,
Falow… :wink:

[quote=black_fire]No Sourceforge tem um componente chamado display tag, vc joga uma collection nele e ele se vira com o resto.
Bem bacana…[/quote]

O DisplayTag realmente eh show de bola, POREM a paginacao dele eh realizada de maneira “artificial”, digamos assim - ele seleciona sempre todos os registros que exibe apenas a faixa adequada. Se isso nao for problema, vai fundo, porque ele agiliza o trampo.

Se quiser fazer seleção na consulta em si nao rola. Nao eh defeito do DisplayTag - eh que esse nao eh o objetivo dele, eu acho. Se alguem conhecer alguma taglib que faca isso, manifeste-se.

Marcio Kuchma

Olá

Veja Struts-Layout (http://struts.application-servers.com/)

O exemplo das tags do Struts-Layout é bem legal:
(http://struts.application-servers.com/DemoServeurDeNews/)

o usuário: dig
e senha: dig

É uma idéia. 8)

Até mais.
Fabrício Luis