仿oschina分页实现

为什么80%的码农都做不了架构师?>>>   hot3.png

PageUtil 
package zh.util;
import java.util.List;
public class PageUtil {
 
 public int currentPage = 1; //当前页
 
 public int totalCount = 0; //总条数
 
 public int pageSize = 10; //每页数据条数
 
 public int pageWidth = 9; //分页工具条显示多少个页按钮
 
 public int totalPage = 1; //总页数
 
 public List list;//数据列
 
 public String pging = "";
 
// public PageUtil(String currentPage,String totalCount,String href,List list)
// {
//  this.currentPage = Integer.valueOf(currentPage);
//  this.totalCount = Integer.valueOf(totalCount);
//  this.totalPage = this.totalCount / this.pageSize;
//  if(this.totalCount % this.pageSize != 0)
//   this.totalPage = this.totalPage+1;
//  this.list = list;
//  
//  //生成分页条
//  StringBuffer sb_Tbr = new StringBuffer();
//  //上一页
//  if(this.currentPage > 1)
//  {
//   sb_Tbr.append("上一页(current)");
//  }
//  
//  //第一页
//  if(this.currentPage == 1)
//  {
//   sb_Tbr.append("1");
//  }else{
//   sb_Tbr.append("1");
//  }
//  
//  int startPage = 2,endPage = pageWidth;
//  if(this.currentPage >= pageWidth-3)
//  {
//   startPage = this.currentPage - 4;
//   endPage = this.currentPage + 3;
//  } 
//  
//  if(endPage >totalPage)
//  {
//   endPage = totalPage;
//  }
//  
//  for(int i = startPage ;i < endPage;i++)
//  {
//   if(i == this.currentPage)
//   {
//    sb_Tbr.append(""+i+"");
//   }else{
//    sb_Tbr.append(""+i+"");
//   }
//  }
//  
//  //最后页
//  sb_Tbr.append(""+this.totalPage+"");
//  //下一页
//  if(this.currentPage < this.totalPage)
//  {
//   sb_Tbr.append("下一页(current)");
//  }
//  this.pging = sb_Tbr.toString();
//  System.out.println(this.pging);
//  
// }
 
 public PageUtil(String currentPage,String totalCount,String jsfn,List list)
 {
  this.currentPage = Integer.valueOf(currentPage);
  this.totalCount = Integer.valueOf(totalCount);
  this.totalPage = this.totalCount / this.pageSize;
  if(this.totalCount % this.pageSize != 0)
   this.totalPage = this.totalPage+1;
  this.list = list;
  
  //生成分页条
  StringBuffer sb_Tbr = new StringBuffer();
  //上一页
  if(this.currentPage > 1)
  {
   sb_Tbr.append("上一页(current)");
  }
  
  //第一页
  if(this.currentPage == 1)
  {
   sb_Tbr.append("1");
  }else{
   sb_Tbr.append("1");
  }
  
  int startPage = 2,endPage = pageWidth;
  if(this.currentPage >= pageWidth-3)
  {
   startPage = this.currentPage - 4;
   endPage = this.currentPage + 3;
  } 
  
  if(endPage >totalPage)
  {
   endPage = totalPage;
  }
  
  for(int i = startPage ;i < endPage;i++)
  {
   if(i == this.currentPage)
   {
    sb_Tbr.append(""+i+"");
   }else{
    sb_Tbr.append(""+i+"");
   }
  }
  
  //最后页
  sb_Tbr.append(""+this.totalPage+"");
  //下一页
  if(this.currentPage < this.totalPage)
  {
   sb_Tbr.append("下一页(current)");
  }
  this.pging = sb_Tbr.toString();
  System.out.println(this.pging);
  
 }
 
 public int getCurrentPage() {
  return currentPage;
 }
 
 public void setCurrentPage(int currentPage) {
  this.currentPage = currentPage;
 }
 
 public int getTotalCount() {
  return totalCount;
 }
 
 public void setTotalCount(int totalCount) {
  this.totalCount = totalCount;
 }
 
 public int getPageSize() {
  return pageSize;
 }
 
 public void setPageSize(int pageSize) {
  this.pageSize = pageSize;
 }
 
 public int getPageWidth() {
  return pageWidth;
 }
 
 public void setPageWidth(int pageWidth) {
  this.pageWidth = pageWidth;
 }
 
 public int getTotalPage() {
  return totalPage;
 }
 
 public void setTotalPage(int totalPage) {
  this.totalPage = totalPage;
 }
 
 public List getList() {
  return list;
 }
 
 public void setList(List list) {
  this.list = list;
 }
 
 public String getPging() {
  return pging;
 }
 
 public void setPging(String pging) {
  this.pging = pging;
 }
 
 public static void main(String[] args) {
  
 }
 
 
}

package zh.servlet;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import zh.util.PageUtil;
public class ListServlet extends HttpServlet {
  
 public void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
  String p = request.getParameter("p");
  if(p == null)
  {
   p = "1";
  }
  String totalCount = "201";
  String jsfn = request.getParameter("jsfn");
  System.out.println(jsfn);
  List> list = new ArrayList>();
  PageUtil pageUtil = new PageUtil(p,totalCount,jsfn,list);
  request.setAttribute("pageUtil",pageUtil);
  request.getRequestDispatcher("/list.jsp").forward(request, response);
 }
  
 public void doPost(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
  doGet(request,response);
   
 }
}

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
 String path = request.getContextPath();
 String basePath = request.getScheme() + "://"
   + request.getServerName() + ":" + request.getServerPort()
   + path + "/";
 List> lst = new ArrayList();
 for(int i = 0;i<50;i++)
 {
  lst.add(new HashMap());
 }  
%>






">
BootStrap实例 列表







  



 
   
                             
                                               序号               姓名               性别               年龄               职业               操作                                              <% for(int i=0;i<10;i++){ %>                            <%=i+1%>               张三               男               23               程序员                               
                查看                 修改                 删除                
                                         <%} %>                                      ${pageUtil.pging}                             function jsfn(currentPage)           {            document.getElementById("currentPage").value = currentPage;            document.list_nform.submit();           }                         
     
    
               List     zh.servlet.ListServlet           List     /servlet/List   

转载于:https://my.oschina.net/body/blog/482466

你可能感兴趣的:(仿oschina分页实现)