网站建设知识
Mysql+servlet实现分页
2025-07-22 10:02  点击:0

Mysql+servlet实现分页:使用方法看类的说明,使用的是servlet,在框架上使用的话自行修改一下吧,分页语句使用的是Mysql的。

package com.turing.util;import java.sql.SQLException;import java.util.List;import java.util.Map;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import com.turing.dao.DaoImpl;import com.turing.dao.IDao;public class page {         private List records;// 记录         private Long totalrecordnumber;// 总记录数         private Integer startindex;// 第一页         private Integer endindex;// 最后一页         private Integer totalpagenumber;// 总页数         private Integer currentpage;// 当前页         IDao dao=new DaoImpl();//使用的dao        //获得总页数 显示页数 当前页数 第一页 最后一页         public void setIndex(int currentpage, int viewperpage, int totalpagenumber) {          if (viewperpage >= totalpagenumber) {           startindex = 1;           endindex = totalpagenumber;          } else {           if (currentpage <= viewperpage / 2) {            startindex = 1;            endindex = viewperpage;           } else if ((currentpage + viewperpage / 2) > totalpagenumber) {            startindex = totalpagenumber - viewperpage + 1;            endindex = totalpagenumber;           } else {            startindex = currentpage - (viewperpage - 1) / 2;            endindex = currentpage + viewperpage / 2;           }          }         }                public void pageFenye(HttpServletRequest request, HttpServletResponse response,String sql,int maximum,int viewperpage) throws ClassNotFoundException, SQLException{             // 当前是第几页             String currentpageStr = request.getParameter("currentpage") == null ? "1" : request.getParameter("currentpage");             int currentpage = Integer.parseInt(currentpageStr);             // 每页显示多少条             // 可以显示多少页             //分页查询语句             List> listPage = dao.executeQueryForList(""+sql+" limit "+ (currentpage - 1) * maximum + "," + maximum);             //查询全部             List> listAll = dao.executeQueryForList(sql);             int count=listAll.size();             this.records = listAll;             this.totalrecordnumber = (long) count;             this.currentpage = currentpage;             totalpagenumber = (int) (totalrecordnumber % maximum == 0 ? totalrecordnumber / maximum: totalrecordnumber / maximum + 1);//获得总页数             setIndex(currentpage, viewperpage, totalpagenumber);             String pageStr="总共"+listAll.size()+"条数据 "+                            "