📄 pagecounter.java
字号:
package org.chooseClass.pageCounter;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.chooseClass.database.DBConnect;
import org.chooseClass.setterAndgetter.Student;
import org.chooseClass.setterAndgetter.Teacher;
public class PageCounter {
private int totalRows;//��ݿ����������
private int currentPage = 1;//��ʼ����ݿ���ʵ���ʼҳ��
private int maxSize = 5;//һ����ݿ���ʷ��ص�����¼����
private int firstRow = 0;//��ݿ���ʵ���ʼ��
private int totalPage;
public PageCounter(){
}
public int getCurrentPage() {
return currentPage;
}
public void setCurrentPage(int currentPage) {
this.currentPage = currentPage;
}
public int getFirstRow() {
return firstRow;
}
public void setFirstRow(int firstRow) {
this.firstRow = firstRow;
}
public int getMaxSize() {
return maxSize;
}
public void setMaxSize(int maxSize) {
this.maxSize = maxSize;
}
public int getTotalRows() {
return totalRows;
}
public void setTotalRows(int totalRows) {
this.totalRows = totalRows;
}
public int getTotalPage() {
return totalPage;
}
public void setTotalPage(int totalPage) {
this.totalPage = totalPage;
}
public void counter(String type){
type = type.toLowerCase();
if(type.equalsIgnoreCase("first")){
first();
}else if (type.equalsIgnoreCase("last")){
last();
}else if(type.equalsIgnoreCase("next")){
next();
}else if(type.equalsIgnoreCase("previous")){
previous();
}
}
private void previous() {
// TODO Auto-generated method stub
if(currentPage == 1){
currentPage = 1;
}else{
currentPage--;
}
firstRow = (currentPage-1)*maxSize;
}
private void next() {
// TODO Auto-generated method stub
if(currentPage<totalPage){
currentPage++;
}else if(currentPage==totalPage){
currentPage = totalPage;
}
firstRow = (currentPage-1)*maxSize;
}
private void last() {
// TODO Auto-generated method stub
currentPage = totalPage;
firstRow = (currentPage - 1)*maxSize;
}
private void first() {
// TODO Auto-generated method stub
currentPage = 1;
firstRow = 0;
}
public List GetStudentPageData(String sql,HttpServletRequest request) throws Exception{
ArrayList<Student> tempList =new ArrayList<Student>();
ResultSet rs=null;
DBConnect dbc=new DBConnect(sql);
rs=dbc.executeQuery();
Student temp = null;
while(rs.next()){
temp = new Student();
temp.setStu_id(rs.getString("stu_id"));
temp.setStu_name(rs.getString("stu_name"));
temp.setSex(rs.getString("stu_sex"));
temp.setMajor_id(rs.getString("major_name"));
temp.setDepartment_id(rs.getString("department_name"));
tempList.add(temp);
}
PageCounter pc = new PageCounter();
pc = (PageCounter)request.getSession().getAttribute("page");
//int totalPage = 0;
if(tempList.size()%pc.getMaxSize()==0)
totalPage = tempList.size()/pc.getMaxSize();
else totalPage = tempList.size()/pc.getMaxSize()+1;
//pc.setTotalPage(totalPage);
//query.setFirstResult(pc.getFirstRow());
//query.setMaxResults(pc.getMaxSize());
List<Student> list=new ArrayList<Student>();
int i = pc.getFirstRow();
int maxSize = 0;
if(tempList.size()-pc.getFirstRow()<pc.getMaxSize()){
maxSize = tempList.size();
}else{
maxSize = pc.getFirstRow()+pc.getMaxSize();
}
for(;i<maxSize;i++){
list.add((Student)(tempList.get(i)));
}
return list;
}
public List GetNoticePageData(List templist,HttpServletRequest request){
PageCounter pc = new PageCounter();
pc = (PageCounter)request.getSession().getAttribute("page");
//int totalPage = 0;
if(templist.size()%pc.getMaxSize()==0)
totalPage = templist.size()/pc.getMaxSize();
else totalPage = templist.size()/pc.getMaxSize()+1;
//pc.setTotalPage(totalPage);
//query.setFirstResult(pc.getFirstRow());
//query.setMaxResults(pc.getMaxSize());
List<Teacher> list=new ArrayList<Teacher>();
int i = pc.getFirstRow();
int maxSize = 0;
if(templist.size()-pc.getFirstRow()<pc.getMaxSize()){
maxSize = templist.size();
}else{
maxSize = pc.getFirstRow()+pc.getMaxSize();
}
for(;i<maxSize;i++){
list.add((Teacher)(templist.get(i)));
}
return list;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -