package bean;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Vector;
import base.DaoBase;
public class PageBean {
private int recordcount;
private int recordperpage=5;
private int maximumpage;
private int currentpage;
private Vector pagecontent=new Vector();
private PageBean(){
}
public PageBean(int currentpage){
setRecordcount();
setMaximumpage();
setCurrentpage(currentpage);
}
private void setRecordcount(){
int recordcount=0;
Connection conn=null;
Statement stat=null;
String sql=null;
ResultSet rest=null;
try{
DaoBase daobase=new DaoBase();
conn=daobase.getConn();
stat=conn.createStatement();
sql="select count(*) from book";
rest=stat.executeQuery(sql);
if(rest.next()){
recordcount=rest.getInt(1);
}
rest.close();
stat.close();
daobase.closeConn();
this.recordcount=recordcount;
}catch(Exception ex){
ex.printStackTrace();
}
}
private void setMaximumpage(){
if(recordcount%recordperpage==0){
this.maximumpage=recordcount/recordperpage;
}else{
this.maximumpage=recordcount/recordperpage+1;
}
}
public int getMaximumpage(){
return this.maximumpage;
}
private void setCurrentpage(int currentpage){
this.currentpage=currentpage;
}
public int getCurrentpage(){
return this.currentpage;
}
public PageBean getPageBean(){
DaoBase daobase=new DaoBase();
Connection conn=daobase.getConn();
try{
Statement stat=conn.createStatement();
String sql="select top " + (recordperpage*currentpage) + " * from book";
ResultSet rest=stat.executeQuery(sql);
int i=0;
Object[] objs=null;
while(rest.next()){
if(i++>((currentpage-1)*recordperpage-1)){
objs=new Object[8];
objs[0]=rest.getInt(1);
objs[1]=rest.getString(2);
objs[2]=rest.getString(3);
objs[3]=rest.getString(4);
objs[4]=rest.getString(5);
objs[5]=rest.getString(6);
objs[6]=rest.getFloat(7);
objs[7]=rest.getString(8);
pagecontent.add(objs);
}
}
rest.close();
stat.close();
}catch(Exception ex){
ex.printStackTrace();
}
daobase.closeConn();
return this;
}
public int getRecordperpage(){
return this.recordperpage;
}
public Vector getPagecontent(){
return this.pagecontent;
}
}