java实现对数据库的分页
来源:互联网 发布:证书查询系统源码 编辑:程序博客网 时间:2024/05/23 11:59
package util;
import java.sql.
Connection
;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
/**
* @author Hongyu
*
* @param <T>
*/
public
class Pagination<T> {
// 当前页
private
Integer
nowPage;
// 页面要显示信息条数
private
Integer
pageSize;
// 根据页面显示的条数计算总页数
private
Integer
countPage;
// 根据传入的数据库查询数据库中的信息的条数
private
Integer
total;
// 向数据库查询时的开始的下标
private
Integer
startIndex;
// 向数据库查询时的查询条数
private
Integer
endIndex;
// 将查询到的数据存放到这里
private List<T>
rows
;
public
Pagination(
Integer
nowPage,
Integer
pageSize, String tableName) {
// 赋值
this.nowPage = nowPage;
this.pageSize = pageSize;
// 判断当前页是否合法
if (this.nowPage < 1) {
this.nowPage = 1;
}
// 向数据库发送查询,查询出指定表格的数据的总数
this.total = this.getCountSize(tableName);
// 计算总页数
this.countPage = this.total % this.pageSize == 0 ? this.total
/ this.pageSize : this.total / this.pageSize + 1;
if (this.nowPage > this.countPage) {
this.nowPage = this.countPage;
}
//System.
out
.println(
"pagenation中的nowPage=========="
+ this.nowPage);
// 计算出开始的记录下标,和每页要显示的条数
if (this.nowPage == 0) {
this.startIndex = this.nowPage * this.pageSize;
this.endIndex = this.pageSize;
}
else
{
this.startIndex = (this.nowPage - 1) * this.pageSize;
this.endIndex = this.pageSize;
}
/*System.out.println(this.startIndex + "======pagenation中的开始和结束========"
+ this.endIndex+"====================总页数"+countPage);
*/
}
// 根据提供的表名向数据库发送请求,计算指定数据表中的数据总条数
public
Integer
getCountSize(String tableName) {
int
countRecord = 0;
String sql =
"select count(*) as c from "
+ tableName;
Connection
conn = JdbcUtil.getConn();
PreparedStatement pstmt =
null
;
ResultSet rs =
null
;
try {
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if (rs.
next
()) {
countRecord = rs.getInt(
"c"
);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
JdbcUtil.release(rs, pstmt);
}
return
countRecord;
}
public
List<T> getRows() {
return
rows
;
}
public
void setRows(List<T>
rows
) {
this.
rows
=
rows
;
}
public
Integer
getStartIndex() {
return
startIndex;
}
public
Integer
getEndIndex() {
return
endIndex;
}
public
Integer
getTotal() {
return
total;
}
}
0 0
- java实现对数据库的分页
- java(2014)实现对mysql数据库分页的代码
- 对数据库中的数据进行分页处理的实现
- 数据库的分页实现
- 数据库的分页实现
- 数据库分页算法java实现
- Java 实现对VF数据库的访问
- 数据库的分页查询及java代码如何实现
- derby数据库分页的实现
- 不同数据库的分页实现
- ThinkPHP 对数据库的数据进行分页
- 分页代码编写与实现对数据库 表的增删改查
- JAVA、jsp、数据库实现分页浏览功能
- 各种数据库分页及Java实现
- PHP实现对mysql数据库内容分页显示
- 在JDeveloper中用java实现对数据库的控制
- 使用Java实现对MySql数据库的导入与导出
- java实现对数据库日期天数的处理
- MYSQL导入导出常用命令
- Gradle入门系列
- Git命令总结
- Linux学习7_*.src.rpm包与*.tar.gz、*.rpm包的区别
- xml 学习 1
- java实现对数据库的分页
- Android多线程处理
- ios 七牛云上传流程
- windows media player
- 删除android系统下app
- UVA 1664(思路题目)
- Redhat Linux 6 Ext3 File System Guide
- JAVA设计模式 -- 组合模式
- java.lang.ClassNotFoundException: org.dom4j.io.STAXEventReader