Cuando usé por primera vez Jframe para programarlo, lo escribí más simple. Primero revisé todos los registros y luego filtré los registros de la página actual de acuerdo con el número de página actual. El pequeño conjunto devuelto se puede mostrar directamente en la tabla.
import java.util.arrayList; import java.util.list; import com.yu.entity.user; public class pageController {Lista privada <serem> bigList = new ArrayList <Serer> (); // Gran colección, obtenga una lista privada <Ser User> SmallList = New ArrayList <Serer> (); // Pequeña colección, regrese a la clase que lo llama privado static int currentPageIndex = 1; // número de página actual privado int countperPage = 10; // Número de pantallas para cada página private int pageCount; // Número total de páginas INT Private Int RecordCount; // Número total de registros // Inicializar el bloque, al llamar a la clase, se cargará automáticamente {// Calendar el método para consultar la base de datos y devolver una lista this.bigList = new Utils (). Query (); // Calcule el número total de páginas if (bigList.size ()%countperpage == 0) {this.pageCount = bigList.size ()/countperpage; } else {this.pageCount = (bigList.size ()/countperpage) +1; }} public pageController () {} // Pase en el constructor del número de página especificado, consulte qué página. public PageController (int currentPageIndex) {this.currentPageIndex = currentPageIndex; } // Obtenga un registro exacto de la página actual y devuelva una lista de la lista Public List <Serve> setCurentPageIndex () {return select (); } // Página siguiente Public List <Ser User> nextPage () {if (currentPageIndex <pageCount) {currentPageIndex ++; System.out.println ("Página actual:"+currentPageIndex); } return select (); } // Página anterior Lista pública <serem> anteriorPage () {if (currentPageIndex> 1) {currentPageIndex--; System.out.println ("Página actual:"+currentPageIndex); } return select (); } // Este método es para la llamada del método anterior, filtro de registros basados en la página actual de la página Public List <serem> select () {RecordCount = bigList.size (); for (int i = (currentPageIndex-1)*countperPage; i <currentPageIndex*countperpage && i <discount; i ++) {smallList.add (bigList.get (i)); } return smalllist; }}El siguiente es el contenido escrito en el JFRame, llamando al método de paginación.
// consulta la página anterior vacío privado jbutton8actionperformed (java.awt.event.actionEvent evt) {list <serem> newList = new PageController (). AnteriorPage (); Viewall (NewList); } // Devuelve el registro de la primera página void private jButton10Actionperformed (java.awt.event.actionEvent evt) {list <serer> newList = new PageController (1) .setCurentPageIndex (); Viewall (NewList); } // consulta la página siguiente void private jButton9Actionperformed (java.awt.event.actionEvent evt) {list <serem> newList = new PageController (). NextPage (); Viewall (NewList); } // Mostrar a los usuarios en la lista public void Viewall (List <Ser Usem> List) {Object [] [] Objects = New Object [(List.Size ())] []; for (int i = 0; i <objects.length; i ++) {objetos [i] = nuevo objeto [3]; objetos [i] [0] = i + 1; objetos [i] [1] = list.get (i) .getUserId (); objetos [i] [2] = list.get (i) .getTrUeName (); } jtable1.setModel (nuevo javax.swing.table.defaultTableModel (objetos, nueva cadena [] {"número de línea", "número de trabajo", "nombre"})); }Lo anterior es el método de implementación para paginar los datos en una tabla que el editor le presentó. Espero que te sea útil. Si tiene alguna pregunta, déjame un mensaje y el editor le responderá a tiempo. ¡Muchas gracias por su apoyo al sitio web de Wulin.com!