TransWikia.com

Paginación de resultados con JSP y MySql

Stack Overflow en español Asked by HAROLD RUEDA ANTOLINEZ on November 17, 2021

quisiera preguntar si alguien tiene algún ejemplo de paginación en jsp, ya que estoy realizando una página web que contiene una sección tipo blog, donde se realiza una consulta a BD y retorna un arreglo de objetos, quisiera preguntar como puedo paginarlos, para no cargar por ejemplo 100 resultados en una sola página.

One Answer

Ya resolví la paginación, utilizando MySql y JSP realice el siguiente código para paginar.

<%    
    int pag = 1;
    //Al momento de dar siguiente o presionar otro botón, manda como parametro "pg" con el número de página.
    if (request.getParameter("pg") != null) {
        pag = Integer.valueOf(request.getParameter("pg"));
    } 
    NovedadServices novedad = new NovedadServices();
    ArrayList<Novedad> n = new ArrayList();
    //Obtengo los datos de la base de datos mediante el crud.
    n = novedad.read();
    //maxPag es la variable para Máximo de Páginas, se haya calculando el tamaño del arreglo de objetos entre el número de
    //Elementos por página.
    int maxPag = n.size() / 9;
    //Aquí hago una operación para obtener el número de registro del que inicia.    
    int regMin = (pag - 1) * 9;
    //Aquí hago una operación para obtener el número de registros máximos para mostrar en esa página.
    //Esto con el fin, de recorrer el arreglo desde el registro mínimo hasta el registro máximo.
    int regMax = pag * 9;
%>

<% //Pregunto si hay más de una página, para comenzar paginación.
                    if (maxPag >= 1) {
                        //Si la página diferente a uno, si agrega el botón anterior.
                        if(pag!=1){%>
                            <li><a href="blog.jsp?pg=<%=pag - 1%>">&lt;</a></li>
                        <%}%>
                        <%//Realizo el for para calcular el máximo de páginas.
                            for (int i = 0; i < maxPag; i++) {
                            //Si la página es igual a la página actual, muestra la etiqueta active.
                                if(i+1==pag){
                        %>
                            <li class="active"><span><%=i+1%></span></li>
                        <%  }//Si no, sigue mostrando las etiquetas normales con la opción para desplazarse.
                            else{%>
                                <li><a href="blog.jsp?pg=<%=i+1%>"><%=i+1%></a></li>
                        <%}}
                        //Sí pagina es diferente al número máximo de páginas, muestra la opción siguiente.
                        if(pag!=maxPag){%>
                            <li><a href="blog.jsp?pg=<%=pag + 1%>">&gt;</a></li>
                <%}}//Si el máximo de páginas no es mayor a 1, muestra solo una página 
                    else {%>
                        <li class="active"><span>1</span></li>
                <%}
                %>

Answered by HAROLD RUEDA ANTOLINEZ on November 17, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP