通用谷歌分页算法

分页bean中:package cn.csdn.domain;

import java.util.List;

public class Page {

 private int nowpage;// 当前页
 private int countrecord;// 总记录数
 private int countpage;// 总页数

 public static final int PAGESIZE = 5;// 每页显示的记录数

 private int sumindex = 6;// 索引的sum值
 private int startindex;// 开始的索引值
 private int endindex;// 结束的索引值

 private List allentities;

 public Page() {

 }

 public Page(int nowpage,int countpage,int a) { // 可变
  /*
   * 计算出索引的位置
   */
  
   if (nowpage >=(a-3)) {
    startindex = nowpage - (a-5);
    endindex = nowpage + 4;
   } else {
    
    startindex = 1;
    endindex = nowpage + 4;
   }
  
 if (endindex>countpage) {
   startindex = countpage - (a-1);
   endindex = countpage;
  }

 }

 public int getNowpage() {
  return nowpage;
 }

 public void setNowpage(int nowpage) {
  this.nowpage = nowpage;
 }

 public int getCountrecord() {
  return countrecord;
 }

 public void setCountrecord(int countrecord) {
  this.countrecord = countrecord;
 }

 public int getCountpage() {
  return countpage;
 }

 public void setCountpage(int countpage) {
  this.countpage = countpage;
 }

 public int getStartindex() {
  return startindex;
 }

 public void setStartindex(int startindex) {
  this.startindex = startindex;
 }

 public int getEndindex() {
  return endindex;
 }

 public void setEndindex(int endindex) {
  this.endindex = endindex;
 }

 public List getAllentities() {
  return allentities;
 }

 public void setAllentities(List allentities) {
  this.allentities = allentities;
 }

 public int getSumindex() {
  return sumindex;
 }

 public void setSumindex(int sumindex) {
  this.sumindex = sumindex;
 }

}

 


servlet中:

package cn.csdn.web.servlet;

import java.io.IOException;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import cn.csdn.web.service.StudentServiceImpl;
import cn.csdn.domain.Page;
import cn.csdn.domain.Student;

public class ListStusServlet extends HttpServlet {

 @Override
 protected void doGet(HttpServletRequest req, HttpServletResponse resp)
   throws ServletException, IOException {
  this.doPost(req, resp);
 }

 @Override
 protected void doPost(HttpServletRequest req, HttpServletResponse resp)
   throws ServletException, IOException {
  // 1.设置编码
  req.setCharacterEncoding("utf8");

  // 2.获取当前页
  
  int nowpage = 1;
  String npage = req.getParameter("nowpage");

  if (npage != null) {
   nowpage = Integer.valueOf(npage);
  }
  
  
  // 存入到page中

  // 3、创建sevice服务操作对象
  StudentServiceImpl ssi = new StudentServiceImpl();
  List<Student> allentities = ssi.getNowPageInfo(nowpage);
  int lastpage = ssi.getCountPage();
  Page stupage = new Page(nowpage,lastpage,12);
        stupage.setNowpage(nowpage);
        stupage.setCountpage(lastpage);
  stupage.setAllentities(allentities);
  req.setAttribute("stupage", stupage);

  req.getRequestDispatcher("liststs.jsp").forward(req, resp);
 }

}
 

 

别的方法和一般分页是一样的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值