`

实现数据库查询分页Mysql

    博客分类:
  • J2EE
阅读更多

 

  1. //最近在笔试中遇到了一个要求写连接数据库及数据分页的程序的问题,当时只是写出了数据库连接的code,现经过搜集资料,列出程序:

  1. package com.jdbc.page;  
  2.   
  3. import java.sql.Connection;  
  4. import java.sql.DriverManager;  
  5. import java.sql.PreparedStatement;  
  6. import java.sql.ResultSet;  
  7. import java.util.ArrayList;  
  8. import java.util.List;  
  9.   
  10. /** 
  11.  * 注:FinalParm.PAGER_ECORD 為每頁顯示數據量這裡為3 
  12.  * @author Administrator 
  13.  * 
  14.  */  
  15.   
  16. public class JDBCPageTest {  
  17.   
  18.     private Connection conn = null;  
  19.   
  20.     private PreparedStatement pre = null;  
  21.   
  22.     private ResultSet rs = null;  
  23.   
  24.     public JDBCPageTest() {  
  25.         this.setConection();  
  26.     }  
  27.   
  28.     /** 
  29.      * 获得连接对象 
  30.      */  
  31.     public void setConection() {  
  32.         try {  
  33.             Class.forName("org.gjt.mm.mysql.Driver");  
  34.             conn = DriverManager.getConnection(  
  35.                     "jdbc:mysql://localhost:3306/test""root""");  
  36.         } catch (Exception e) {  
  37.             e.printStackTrace();  
  38.         }  
  39.     }  
  40.   
  41.     /** 
  42.      * 获得总页数 
  43.      * 注:主要用於頁面跳轉傳參和總頁數顯示 
  44.      * @return 
  45.      */  
  46.     public int getTotalPage() throws Exception {  
  47.         int totalPage = 0;  //总页数  
  48.         int totalRecord = 0//总记录数  
  49.         String sql = "select count(*) as totalRecord from t_user";  
  50.         pre = conn.prepareStatement(sql);  
  51.         rs = pre.executeQuery();  
  52.         while (rs.next()) {  
  53.             totalRecord = rs.getInt("totalRecord");  
  54.         }  
  55.         System.out.println("总记录数:" + totalRecord);  
  56.   
  57.         //根据总记录数算出总页数  
  58.         if (totalRecord % FinalParm.PAGER_ECORD == 0) {  
  59.             totalPage = totalRecord / FinalParm.PAGER_ECORD;  
  60.         } else {  
  61.             totalPage = totalRecord / FinalParm.PAGER_ECORD + 1;  
  62.         }  
  63.         return totalPage;  
  64.     }  
  65.   
  66.     /** 
  67.      * 获得每页数据 注:根据不同的数据库其SQL分页语句也有不同 这里采用MySQL数据库 
  68.      * 这里将查出数据放到一个LIST,具体返回根据自己业务而定 
  69.      * @param currentPage 
  70.      * @return 
  71.      */  
  72.     public List getReslutList(int currentPage) throws Exception {  
  73.         List list = new ArrayList();  
  74.         String sql = "select * from t_user limit " + (currentPage - 1)  
  75.                 * FinalParm.PAGER_ECORD + "," + FinalParm.PAGER_ECORD + "";  
  76.         pre = conn.prepareStatement(sql);  
  77.         rs = pre.executeQuery();  
  78.         while (rs.next()) {  
  79.             list.add(rs.getInt("id"));  
  80.             list.add(rs.getString("name"));  
  81.             list.add(rs.getString("password"));  
  82.         }  
  83.         return list;  
  84.     }  
  85.   
  86.     /** 
  87.      * 关闭所有对象 
  88.      *  
  89.      * @throws Exception 
  90.      */  
  91.     public void closeAll() throws Exception {  
  92.         if (rs != null) {  
  93.             rs.close();  
  94.         } else if (pre != null) {  
  95.             pre.close();  
  96.         } else if (conn != null) {  
  97.             conn.close();  
  98.         }  
  99.     }  
  100.   
  101.     /** 
  102.      * @测试 列出第二页的数据 
  103.      */  
  104.     public static void main(String[] args) throws Exception {  
  105.   
  106.         JDBCPageTest test = new JDBCPageTest();  
  107.         System.out.println("总页数:" + test.getTotalPage());  
  108.         List list = test.getReslutList(2);  
  109.         for (int i = 0; i < list.size(); i++) {  
  110.             System.out.print(list.get(i) + " ");  
  111.         }  
  112.     }  
  113.   
  114. }  

 

分享到:
评论

相关推荐

    mysql数据库实现分页

    在MySQL数据库中,分页是处理大量数据查询时不可或缺的一种技术。它允许用户按需加载数据,而不是一次性获取所有记录,从而提高了用户体验并降低了服务器负载。以下是对分页实现的详细说明: 一、基础概念 分页是将...

    易语言MYSQL数据库分页查询

    易语言作为一款中国本土化的编程语言,提供了与MySQL数据库交互的能力,使得开发者能够轻松实现数据库的分页查询功能。本文将详细讲解如何在易语言中进行MySQL数据库的分页查询,并探讨相关技术点。 首先,我们要...

    PHP结合数据库实现分页

    PHP结合数据库,实现分页功能

    C++实现MySQL分页查询

    总结来说,C++通过MFC和MySQL Connector/C++库可以方便地实现与MySQL数据库的交互,进行分页查询。这个过程涉及到数据库连接、SQL语句构造、结果集处理以及用户界面的交互。理解并熟练运用这些概念和技术,将有助于...

    Qt编写的数据库分页demo

    **Qt编写的数据库分页demo**是一个用于展示如何在Qt应用程序中实现高效、用户友好的数据库数据分页功能的示例项目。这个demo的核心在于它能够处理大量的数据,如千万级记录,同时提供流畅的用户体验,包括上一页、...

    易语言源码MYSQL数据库分页查询.rar

    易语言源码MYSQL数据库分页查询.rar 易语言源码MYSQL数据库分页查询.rar 易语言源码MYSQL数据库分页查询.rar 易语言源码MYSQL数据库分页查询.rar 易语言源码MYSQL数据库分页查询.rar 易语言源码MYSQL数据库分页...

    达梦数据库的基本操作以及分页查询等

    根据java语言对达梦DM数据库的连接和操作,包括建表、新增、修改、删除、查询以及复杂查询和分页查询等完整代码,附送Dm7Dictionary的驱动包,此驱动包兼容jdk1.7和jdk1.8本人亲测完美兼容

    SERVLET技术实现数据库查询

    3. **数据库分页**:在处理大量数据时,分页是一种有效的展示方式,可以避免一次性加载所有记录导致性能下降。在本项目中,后台实现了分页功能,这意味着用户可以根据需求加载特定页面的数据,这通常通过SQL的LIMIT...

    易语言MYSQL数据库分页查询.rar

    易语言MYSQL数据库分页查询.rar 易语言MYSQL数据库分页查询.rar 易语言MYSQL数据库分页查询.rar 易语言MYSQL数据库分页查询.rar 易语言MYSQL数据库分页查询.rar 易语言MYSQL数据库分页查询.rar

    nodejs mysql 实现分页的方法

    Node.js结合MySQL实现分页查询是一种常见的数据处理方式,在Web应用中尤为常见。分页可以有效提高页面的响应速度,并优化用户的浏览体验。本文主要介绍了在Node.js环境下,如何使用MySQL数据库实现分页功能。 首先...

    java中mysql和oracle数据库通用分页功能实现完整Demo

    开发环境:SpringBoot+SSM,同样适合SpringBoot,具备一定Maven项目基础初学者,详细说明地址http://blog.csdn.net/fjekin/article/details/75541573

    常用数据库sql分页

    数据库分页是指从大规模的数据集中提取指定的记录数,以减少数据传输量,提高应用程序的性能和用户体验。常见的数据库管理系统包括MySQL、SQL Server、Oracle、DB2等,每种数据库管理系统都有其特有的分页机制和语法...

    独立的跨数据库的分页

    这样,我们可以在不修改业务逻辑的情况下,切换不同的数据库系统,实现真正的跨数据库分页。 除了代码实现,提供的PPT讲解可能会详细解释如何设计这样的分页系统,包括如何处理不同数据库的差异,以及如何优化分页...

    mysql数据库实现的分页javaWEB开发实现

    在JavaWeb开发中,数据库分页是常见的功能,特别是在数据量较大的时候,为了提高用户体验,我们需要将结果集分批次展示,而不是一次性加载所有数据。本教程将以MySQL数据库为背景,结合Java技术,详细介绍如何实现...

    JSP+JavaBean实现MySQL子查询数据库分页

    总结起来,JSP+JavaBean实现MySQL子查询数据库分页的过程包括:创建数据库表,编写JavaBean处理数据库操作,使用JSP页面展示分页数据,以及构建分页导航链接。在Eclipse 3.4这样的开发环境中,通过合理组织代码和...

    MySQL_数据库实现的JAVA_分页实例

    在这个"MySQL_数据库实现的JAVA_分页实例"中,我们将探讨如何在Java后端实现对MySQL数据库的分页查询,这对于大数据量的展示和优化用户体验至关重要。 首先,理解分页的基本概念:分页是将大量数据分为多个小部分,...

    c# 对数据库进行读取并实现分页操作

    本项目重点探讨了如何使用C#与数据库交互,并实现数据的分页展示,这在处理大量数据时非常关键,因为一次性加载所有数据可能会导致性能问题。下面将详细介绍这个过程中的关键知识点。 首先,我们需要连接到数据库。...

    数据库分页查询语句

    ### 数据库分页查询语句 #### 概述 在处理大量数据时,为了提高用户体验并减轻服务器压力,我们通常采用分页的方式展示数据。不同的数据库管理系统(DBMS)提供了各自的方法来实现分页功能。本文将详细介绍Oracle...

    SSH 分页查询 mysql数据库

    通过以上步骤,可以实现SSH框架下对MySQL数据库的分页查询功能。理解并熟练掌握这些知识点对于开发高效、稳定的企业级应用至关重要。在实际开发中,还需要考虑其他因素,如安全性、可扩展性以及代码的可维护性。

Global site tag (gtag.js) - Google Analytics