Como hacer una paginacion en una consulta de un servlet

ppchan
05 de Noviembre del 2008
Hola Quiero hacer una paginacion de una consulta de "n" registros en mysql, la consulta esta hecha mediante un servlet, pero quisiera saber como puedo hacerle para que muestre todo el contenido de la consulta por partes, de 10 en 10, ojala alguien pudiera ayudarme, muchas gracias

Peterland
05 de Noviembre del 2008
Si usas MySQL lo tienes muy fácil, utiliza la cláusula LIMIT en la Select. Así:

SELECT * FROM tabla LIMIT 0,10;
Te saca los 10 primeros registros. La siguiente select sería:
SELECT * FROM tabla LIMIT 10,10
Te sacaría 10 registros a partir del número 10, luego
SELECT * FROM tabla LIMIT 20, 10
SELECT * FROM tabla LIMIT 30,10
SELECT * FROM tabla LIMIT 40, 10...

Para sistematizar esto, te basta con usar una variable para el primer número (numreg, por ejemplo) e irle sumando 10 con cada rellamada. Puedes guardar esta variable en la sesión.

SELECT * FROM tabla LIMIT numreg, 10

Si al principio numreg vale 0 también funciona, para que puedas sacar tb los primeros registros. Además, con este sistema, simplemente cambiando el número que le sumas a numreg cada vez, cambias la cantidad de registros que se paginan.

anti-flag
05 de Noviembre del 2008
amigo y donde seteo esa variable?
e intentado hacerlo en el servlet mediante la session pero no hay caso
alguna ayuda!

gus
05 de Noviembre del 2008
Con displaytag (http://displaytag.sourceforge.net/)
o
Struts-Layout (http://struts.application-servers.com/)

TAMBIEN PEDES USAR COLECCIONES COMO VECTORES Y ALMACENAR TU CONSULTA EN UN VECTOR R REALIZAR UN HIPERVICULO A LA MISMA JSP Y QUE EN CADA CARGADA LEA LAS PRIMERAS 10 POSICIONES DEL VECTOR , TIENES QUE LLEVAR EL ACUMULADO DE DE CADA RACARGA QUE HAGAS