package cn.model;
import java.util.List;
public class PageBean<T> {
//已知数据
private int pageNum; //当前页,从请求那边传过来。
private int pageSize; //每页显示的数据条数。
private int totalRecord; //总的记录条数。查询数据库得到的数据
//需要计算得来
private int totalPage; //总页数,通过totalRecord和pageSize计算可以得来
//开始索引,也就是我们在数据库中要从第几行数据开始拿,有了startIndex和pageSize,
//就知道了limit语句的两个数据,就能获得每页需要显示的数据了
private int startIndex;
//将每页要显示的数据放在list集合中
private List<T> list;
//分页显示的页数,比如在页面上显示1,2,3,4,5页,start就为1,end就为5,这个也是算过来的
private int start;
private int end;
//通过pageNum,pageSize,totalRecord计算得来tatalPage和startIndex
//构造方法中将pageNum,pageSize,totalRecord获得
public PageBean(int pageNum,int pageSize,int totalRecord) {
this.pageNum = pageNum;
this.pageSize = pageSize;
this.totalRecord = totalRecord;
//totalPage 总页数
if(totalRecord%pageSize==0){
//说明整除,正好每页显示pageSize条数据,没有多余一页要显示少于pageSize条数据的
this.totalPage = totalRecord / pageSize;
}else{
//不整除,就要在加一页,来显示多余的数据。
this.totalPage = totalRecord / pageSize +1;
}
//开始索引
this.startIndex = (pageNum-1)*pageSize ;
//显示5页,这里自己可以设置,想显示几页就自己通过下面算法修改
this.start = 1;
this.end = 5;
//显示页数的算法
if(totalPage <=5){
//总页数都小于5,那么end就为总页数的值了。
this.end = this.totalPage;
}else{
//总页数大于5,那么就要根据当前是第几页,来判断start和end为多少了,
this.start = pageNum - 2;
this.end = pageNum + 2;
if(start < 0){
//比如当前页是第1页,或者第2页,那么就不如和这个规则,
this.start = 1;
this.end = 5;
}
if(end > this.totalPage){
//比如当前页是倒数第2页或者最后一页,也同样不符合上面这个规则
this.end = totalPage;
this.start = end - 5;
}
}
}
//get、set方法。
public int getPageNum() {
return pageNum;
}
public void setPageNum(int pageNum) {
this.pageNum = pageNum;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public int getTotalRecord() {
return totalRecord;
}
public void setTotalRecord(int totalRecord) {
this.totalRecord = totalRecord;
}
public int getTotalPage() {
return totalPage;
}
public void setTotalPage(int totalPage) {
this.totalPage = totalPage;
}
public int getStartIndex() {
return startIndex;
}
public void setStartIndex(int startIndex) {
this.startIndex = startIndex;
}
public List<T> getList() {
return list;
}
public void setList(List<T> list) {
this.list = list;
}
public int getStart() {
return start;
}
public void setStart(int start) {
this.start = start;
}
public int getEnd() {
return end;
}
public void setEnd(int end) {
this.end = end;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
EL和JSTL显示数据,Servlet做控制器。ArrayList数组保存数据,完成增删改查的操作。对Student实体类创建,包含8个字段:学号、密码、姓名、性别、学院、爱好、自我介绍、照片。表单使用密码、单选、复选、列表、文件域等控件学生信息实现分页浏览。这是课上老师要求的课后作业 是没有完善的 因为个人能力有限 但还是可以运行,有积分多的可以下载 谢谢了 就是想下个资源 但是没积分了
资源推荐
资源详情
资源评论
收起资源包目录
基于动态数组的学生信息管理系统.rar (25个子文件)
mystu06
WebContent
upload
list.jsp 1KB
regForm.html 1KB
META-INF
MANIFEST.MF 39B
list2.jsp 1KB
more.jsp 602B
WEB-INF
lib
standard.jar 384KB
jstl.jar 20KB
jstl.jsp 710B
listPage.jsp 4KB
upload.jsp 591B
edit.jsp 2KB
src
cn
model
Student.java 2KB
PageBean.java 4KB
StudentBean.java 1KB
test
Test.java 517B
servlet
StudentServlet.java 3KB
UploadServlet.java 3KB
.project 1KB
.classpath 842B
build
classes
cn
model
StudentBean.class 3KB
PageBean.class 3KB
Student.class 3KB
test
Test.class 1KB
servlet
UploadServlet.class 3KB
StudentServlet.class 4KB
共 25 条
- 1
资源评论
曲月寒
- 粉丝: 5
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功