Java - Lista por páginas en java

   
Vista:

Lista por páginas en java

Publicado por Xexu (1 intervención) el 11/02/2009 16:53:58
Buenas a todos, tengo una pequeña duda sobre un proyecto java que estoy haciendo sobre una tienda virtual.
Tengo un método "list" que mediante un vector me lista todos los productos seguidos y desearía que me los mostrase de 10 en 10 desde un botón "siguiente" para hacer más sencilla la visualización del catálogo.

Si alguien pudiera echarme una mano....

Gracias a todos de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Lista por páginas en java

Publicado por webness (57 intervenciones) el 11/02/2009 17:17:19
Existen varias soluciones para tu caso

1) Hacer una sola consulta que cuente cuantos registros saca tu query, y despues otra consulta segmentada donde sacas de a 10 registros, para lo cual es necesario que hagas un algoritmo que tome como referencia la pagina actual la cantidad total de registros y la cantidad de registros que quieres mostrar "10 en este caso", para que calcules cual es el numero del registro de inicio en cada pagina y puedas hacer tu query, NOTA EN mysql es usando LIMIT despues del WHERE.

2) en el caso de tu List es algo similar, solo que al imprimir no haces query sino que recorres el List de en cierto fragmento.

list.getItem(i);

donde el valor de i por cada pagina es un valor entre 0-9, 10-19,20-29,......(n-9)-(n-1),

Tu algoritmo debe consistir en capturar el valor de la pagina y el valor inicial de i por cada pagina.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

PILAS!!!!

Publicado por webness (57 intervenciones) el 11/02/2009 17:49:11
OJO.

tambien debes de calcular en el segundo caso, el valor final limite del ciclo , dado el caso de que tu list tenga 84 registros el loop de la ultima pagina no debe quedar
for(int i=80;i<90;i++)

porque al momento de hacer referencia a list.getItem(84); te generara error, entonces el ciclo tiene que quedar asi en la ultima pagina:

for(int i=80;i<84;i++)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar