自己写的分页代码

来源:互联网 发布:xcode8 mac 编辑:程序博客网 时间:2024/04/29 09:10


 public List<Food> findFoodList(int page) {
  //每页显示的产品数量
  int temp=6;
  List<Food> list=new ArrayList<Food>();
  Food food=null;
  int rowBegin=0;
        if(page>1 && page<=this.findTotalPage()){
   rowBegin=temp*(page-1);
  }else if(page>this.findTotalPage()){
   page=this.findTotalPage();
   rowBegin=temp*(page-1);
  }
  String sql="SELECT TOP "+temp+" * FROM food WHERE  foodID NOT IN(select top "+rowBegin+" foodID FROM food order by foodID ) order by foodID ";
  Connection con=BaseDao.getCon();
  PreparedStatement pstmt=null;
  ResultSet rs=null;  
  try {
   pstmt=con.prepareStatement(sql);
   rs=pstmt.executeQuery();
   while(rs.next()){
    food=new Food(rs.getInt(1),rs.getString(2),rs.getString(3),rs.getFloat(4),rs.getString(5),rs.getString(6));
    list.add(food);

   }
  } catch (SQLException e) {

   e.printStackTrace();
  }finally{
   BaseDao.closeALL(con, pstmt, rs);
  }  
  return list;
 }

 

jsp:


<%//分页 %>          
<div>                  
<%
int pageTotal=foodBiz.findTotalPage();
int foodTotal=foodBiz.findCountFood();
 if(p<1){
  p=1;
 }else if(p>pageTotal){
  p=pageTotal;
 } 
 int pStart=p-3;
 int pDone=p+3;
 if(pStart<=0){
  pStart=1;
 }
 if(pDone>pageTotal-3){
  pDone=pageTotal;
 }
 %>
<a href="index.jsp?p=1"><<</a>&nbsp;|&nbsp;
<% for(int i=pStart;i<=pDone;i++){%>
<a href="index.jsp?p=<%=i %>"><%=i%></a>&nbsp;|&nbsp; 
<%} %>
<a href="index.jsp?p=<%=pageTotal %>">>></a>              
</div>        

原创粉丝点击