Cet article décrit la méthode de JDBC à l'aide de curseurs pour implémenter la requête de pagination. Partagez-le pour votre référence, comme suit:
/ *** interroge uniquement l'enregistrement maxCount maximum de la base de données à la fois * @param sql L'instruction SQL transmise dans * @param startno quel enregistrement commence à partir de * @param maxCount combien d'enregistrements sont pris dans Total * / public void getData (String SQL, int startNO, int maxCount) {connexion Conned ConnectionUtil.getConnection ();); essayez {// conn.preparestatement (sql, type de curseur, peut être mis à jour); // type de curseur: // resultSet.type_forword_only: entrez uniquement le curseur // resultSet.type_scroll_insensitive: Scrollable. Mais il n'est pas affecté par les modifications des autres utilisateurs dans la base de données. // resultTset.type_scroll_Sensitive: Scrollable. Cet enregistrement changera également lorsque d'autres utilisateurs modifieront la base de données. // L'enregistrement peut être mis à jour: // resultTset.concur_read_only, en lecture-only // resultSet.concur_updatable, peut mettre à jour préparé PSTAT = Conn.preparastement (sql, resultSet.type_scroll_insesensitive, resultnet.concur_read_only); // la requête maximale dont l'enregistrement est pstat.setMaxRows (startno + maxCount-1); ResultSet rs = pStat.ExECuteQuery (); // déplace le curseur vers le premier enregistrement Rs.First (); // Le curseur se déplace vers le premier enregistrement à sortir Rs.Relative (startNo-2); while (Rs.Next ()) System.out.println (Rs.getInt (1)); } catch (sqlexception e) {e.printStackTrace (); }} / *** Requête tous les enregistrements de la base de données, puis utilisez le curseur pour obtenir les enregistrements MaxCount obligatoires * @param sql Instruction transmise dans * @param startno quel enregistrement commence à partir de * @param maxCount combien d'enregistrements sont pris dans le total * / public void getDatafromall (String SQL, int startno, int maxCount) {connexion ConnectionUtil. try {préparéStatement pStat = conn.preparestatement (sql, resultSet.type_scroll_insensitive, resultSet.concur_read_only); ResultSet rs = pStat.ExECuteQuery (); Rs.First (); Rs.Relative (startno-1); int i = startNo-1; while (i <startno + maxCount-1 &&! Rs.IsAfterLast ()) {System.out.println (Rs.GetInt (1)); i ++; Rs.Next (); }} catch (sqlexception e) {e.printStackTrace (); }}Pour plus d'informations sur le contenu lié à Java, veuillez consulter les sujets de ce site: "Tutoriel de structure de données Java et d'algorithme", "Résumé des compétences de fichier Java et d'opération de répertoire", "Résumé de Java Operation Dom Node Skills" et "Résumé des compétences de fonctionnement de Java Cache"
J'espère que cet article sera utile à la programmation Java de tous.