java分页包装器:
/**
* 分页包装器
*/
public abstract class PageWrapper {
public PageWrapper() {}
public PageWrapper(int perNo) {
this.perNo = perNo;
}
public <T> T paging(int pageNo) throws Exception {
this.pageNo = pageNo;
totalNo = queryTotalCount();
if (totalNo != 0) {
return query(getStartIndex(), pageNo);
}
return null;
}
public abstract int queryTotalCount() throws Exception;
public abstract <T> T query(int startIndex, int perNo) throws Exception;
/**
* 查询的起始索引位置
* @return
*/
public int getStartIndex() {
if (pageNo < 1) {
throw new IllegalArgumentException("起始页号应当 >= 1");
}
return (pageNo - 1) * perNo;
}
/**
* 总页数。如果总记录数为 0,页数为1.
* @return
*/
public int getTotalPageNo() {
if (perNo <= 0) {
throw new IllegalArgumentException("每页的记录数量应当 > 0");
}
if (totalNo == 0) {
return 1;
}
if (totalNo % perNo == 0) {
return totalNo / perNo;
}
return totalNo / perNo + 1;
}
/**
* 总记录数
* @return
*/
public int getTotalNo() {
return this.totalNo;
}
/**
* 每页数量
* @return
*/
public int getPerNo() {
return this.perNo;
}
/** 总页数 */
private int totalNo = 0;
/** 页码 */
private int pageNo = 0;
/** 每页数量 */
private int perNo = 20;
}
使用方式:
public class DefaultPageWrapper extends PageWrapper {
public DefaultPageWrapper() {}
public DefaultPageWrapper(int perNo) {
super(perNo);
}
@Override
public <T> T query(int startIndex, int perNo) throws Exception {
return null;
}
@Override
public int queryTotalCount() throws Exception {
return 30;
}
public static void main(String[] args) {
try {
DefaultPageWrapper wrapper = new DefaultPageWrapper(50);
Object obj = wrapper.paging(2);
System.out.println(wrapper.getTotalPageNo());
System.out.println(wrapper.getTotalNo());
System.out.println(wrapper.getStartIndex());
} catch (Exception e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
此Demo使用java编写,可以封装成jar方便各种项目分页功能,只需传参即可。简单来说,本人就是吧分页的功能独立成一个项目,主要类是PageUtil.java 此类封装分页逻辑,页面自动生成分页区,数据显示条数可自动以,...
跟我上面的java底层简易封装配套的。有需要的也可以学习下。
java封装好的分页代码
还有部分代码没有了,主要在Vo定义一个pager 在student类里继承了basic类
有感于制作网站时,常常要求有分页功能。为了避免写重复又不复杂的代码,特编写的这个关于sqlserver 的java代码封装
java swing表格分页控件封装,有利于在开发中节约时间
对分页进行了封装,PageUtil.java的分页工具类,自己写了一个dome。
NULL 博文链接:https://lilang0603.iteye.com/blog/720400
把在页面上的分页操作,在java类用一个对象封装,并且把整个分页的html标签封装在这个对象的String类型的属性里,在需要分页的地方,直接从后台取得这个对象,并把对象中的字符串用页面的内置out对象写到页面上,...
jsp中分页比较烦人。现在把分页封装成类,页面需要直接调用此类就可以解决了。
Java Swing JTable分页!JAVA源码!
java+Ajax分页
----------=====Java 分页算法 =====------------ 1.Struts+JDBC分页算法 1.1 创建分页控制类(如果使用kevinb.jar可以省略本步) --创建接口Pageable.java ...--可以直接使用kevinb.jar包,已经封装了这两个分页控制类;
jsp分页,如果自己写分页将是非常麻烦的一件事情,pager.jar把所有的内容都封装起来,我们只需简单的调用即可。
教学-传智播客-项目视频经典之作巴巴运动网106集-28将Web层分页封装成通用模块源代码 所需要的jar文件: (一)、Hibernate: 位于 "\hibernate-distribution-3.3.2.GA" 目录下的jar文件: hibernate3.jar 位于 "\...
个人总结的一些java中常用的项目封装类,包含了String类的封装,分页的封装,servlet的封装,开发人员必备良品……
java 实现 目录文件的分页查询功能, 只需要调用封装好的方法,通过递归的方式返回文件的列表,有回调方法,可以处理目录下的文件
教学-传智播客-项目视频经典之作巴巴运动网106集-28将Web层分页封装成通用模块源代码 所需要的jar文件: (一)、Hibernate: 位于 "\hibernate-distribution-3.3.2.GA" 目录下的jar文件: hibernate3.jar 位于 "\...
对JDBC的封装,适合多种数据库,使用简单方便。 包含对oracle,mysql,sqlserver等数据库的分页查询实现,之前传的没有simple,这次加上了 (欢迎下载我的最新改良版本:http://download.csdn.net/source/1644852)
自定义的jsp分页,封装了列表数据类及分页导航