`
翩跹吉吉
  • 浏览: 103300 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

MySQL数据库查询分页实现

阅读更多
package com.jdbc.page;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

/**
 * 注:FinalParm.PAGER_ECORD 為每頁顯示數據量這裡為3
 * @author Administrator
 *
 */

public class JDBCPageTest {

	private Connection conn = null;

	private PreparedStatement pre = null;

	private ResultSet rs = null;

	public JDBCPageTest() {
		this.setConection();
	}

	/**
	 * 获得连接对象
	 */
	public void setConection() {
		try {
			Class.forName("org.gjt.mm.mysql.Driver");
			conn = DriverManager.getConnection(
					"jdbc:mysql://localhost:3306/test", "root", "");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	/**
	 * 获得总页数
	 * 注:主要用於頁面跳轉傳參和總頁數顯示
	 * @return
	 */
	public int getTotalPage() throws Exception {
		int totalPage = 0;	//总页数
		int totalRecord = 0; //总记录数
		String sql = "select count(*) as totalRecord from t_user";
		pre = conn.prepareStatement(sql);
		rs = pre.executeQuery();
		while (rs.next()) {
			totalRecord = rs.getInt("totalRecord");
		}
		System.out.println("总记录数:" + totalRecord);

		//根据总记录数算出总页数
		if (totalRecord % FinalParm.PAGER_ECORD == 0) {
			totalPage = totalRecord / FinalParm.PAGER_ECORD;
		} else {
			totalPage = totalRecord / FinalParm.PAGER_ECORD + 1;
		}
		return totalPage;
	}

	/**
	 * 获得每页数据 注:根据不同的数据库其SQL分页语句也有不同 这里采用MySQL数据库
	 * 这里将查出数据放到一个LIST,具体返回根据自己业务而定
	 * @param currentPage
	 * @return
	 */
	public List getReslutList(int currentPage) throws Exception {
		List list = new ArrayList();
		String sql = "select * from t_user limit " + (currentPage - 1)
				* FinalParm.PAGER_ECORD + "," + FinalParm.PAGER_ECORD + "";
		pre = conn.prepareStatement(sql);
		rs = pre.executeQuery();
		while (rs.next()) {
			list.add(rs.getInt("id"));
			list.add(rs.getString("name"));
			list.add(rs.getString("password"));
		}
		return list;
	}

	/**
	 * 关闭所有对象
	 * 
	 * @throws Exception
	 */
	public void closeAll() throws Exception {
		if (rs != null) {
			rs.close();
		} else if (pre != null) {
			pre.close();
		} else if (conn != null) {
			conn.close();
		}
	}

	/**
	 * @测试 列出第二页的数据
	 */
	public static void main(String[] args) throws Exception {

		JDBCPageTest test = new JDBCPageTest();
		System.out.println("总页数:" + test.getTotalPage());
		List list = test.getReslutList(2);
		for (int i = 0; i < list.size(); i++) {
			System.out.print(list.get(i) + " ");
		}
	}

}

 

分享到:
评论

相关推荐

    mysql数据库实现分页

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

    易语言MYSQL数据库分页查询

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

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

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

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

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

    PHP结合数据库实现分页

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

    C++实现MySQL分页查询

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

    servlet连接mysql数据库,实现分页加载

    总结,使用Servlet连接MySQL数据库并实现分页加载功能,主要涉及以下几个步骤:配置JDBC驱动、建立数据库连接、执行SQL查询(含分页条件)、处理结果集、实现分页逻辑以及正确关闭资源。在实际开发中,还要考虑错误...

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

    除了基础的分页实现,还可以考虑优化,比如缓存查询结果、预估总行数避免全表扫描等。在实际项目中,还可以利用框架如Spring Data JPA的Pageable接口,或者MyBatis的分页插件,简化分页操作。 总之,分页是JavaWeb...

    nodejs mysql 实现分页的方法

    本文主要介绍了在Node.js环境下,如何使用MySQL数据库实现分页功能。 首先,分页的基本思路是确定每页显示的数据条目数(即页面大小),然后根据当前页码计算查询数据的起始位置和结束位置。在MySQL中,我们通常...

    Qt编写的数据库分页demo

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

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

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

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

    本教程将详细讲解如何使用JSP(JavaServer Pages)配合JavaBean来实现MySQL数据库的子查询分页功能。在Eclipse 3.4环境下,我们可以轻松地完成这一过程。 首先,我们需要理解JSP和JavaBean的基本概念。JSP是一种...

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

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

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

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

    超简单实用的PHP操作MYSQL数据库类 与分页思路

    这里我们关注的是一个超简单实用的PHP操作MySQL数据库的类,以及如何实现分页功能。这两个知识点对于任何处理大量数据的Web应用来说都是至关重要的。 首先,让我们深入了解一下PHP操作MySQL数据库的类。`DB_Conf....

    Mysql数据库分页查询练习

    在MySQL数据库中,分页查询是一项非常常见的操作,特别是在网页应用中,为了提高用户体验,通常会将大量数据分批次展示,而不是一次性加载所有记录。在这个练习中,我们将学习如何使用MySQL进行分页查询,并结合Java...

    独立的跨数据库的分页

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

    SSH 分页查询 mysql数据库

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

    基于MySQL的数据库查询性能优化.pdf

    "基于MySQL的数据库查询性能优化" 在当前的Web应用开发中,数据库的查询操作已经成为整个应用的性能瓶颈, especialmente 对于使用 MySQL 的 Web 应用。因此,数据库查询性能的优化已经成为一个非常重要的课题。...

Global site tag (gtag.js) - Google Analytics