当前位置:首页 » 网页前端 » 前端页码
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

前端页码

发布时间: 2022-05-01 04:44:03

1. 前端开发 需要根据把后台数据列表 分页显示

搭建项目分页

1.jsp页面

<tr>

<td bgcolor="#00ffff" colspan="10" align="center">

第${pager.currentPage}页

每页${pager.pageSize} 条记录

共${pager.totalPages}页

共${pager.totalRows} 条

<a href="servlet/UserServlet?num=1&page=1" >首页</a>

<a href="servlet/UserServlet?num=1&page=${pager.currentPage-1}">上一页</a>

<a href="servlet/UserServlet?num=1&page=${pager.currentPage+1}">下一页</a>

<a href="servlet/UserServlet?num=1&page=${pager.totalPages}">末页</a>

</td>

</tr>

2.拼接sql语句

SELECT * FROM USERS LEFT JOIN DEPT ON USERDEPT=DEPTNUM

SELECT * FROM(SELECT A.*, ROWNUM RN FROM (SELECT * FROM student) A WHERE ROWNUM <=15)WHERE RN >=11 ORDER BY ENTERDATE


分页sql:SELECT * FROM(SELECT A.*, ROWNUM RN FROM (SELECT * FROM USERS LEFT JOIN DEPT ON USERDEPT=DEPTNUM) A WHERE ROWNUM <=15)WHERE RN >=11 ORDER BY ENTERDATE


3.分页工具类导入到common包:Pager.java


在servlet调用:第一个条件:总条数 第二个条件:当前页数


String page = request.getParameter("page");

//分页调用开始--------------------------------

Pager pager = new Pager();

int totalRows = userService.getCountRows();

pager.setTotalRows(totalRows);

if(null != page){

pager.setCurrentPage(Integer.parseInt(page));

}else{

pager.setCurrentPage(1);

}

request.setAttribute("pager", pager);//给页面分页赋值

4.把pager工具类传递到,拼接执行动态分页sql语句

开始条数:pager.getStartRow()

结束条:pager.getCurrentPage()*pager.getPageSize()


String sql="SELECT * FROM(SELECT A.*, ROWNUM RN FROM (SELECT * FROM USERS LEFT JOIN DEPT ON USERDEPT=DEPTNUM) A WHERE ROWNUM <="+pager.getCurrentPage() *pager.getPageSize()+")WHERE RN >="+pager.getStartRow();//分页sql 1-3条

分页根本条件:

private int totalRows; //总行数

private int pageSize = 5; //每页显示的行数

private int currentPage=1; //当前页号

private int totalPages; //总页数

private int startRow; //当前页在数据库中的起始行

private int endRow; //数据库执行sql的结束行


totalPages算法:

if(totalRows<=pageSize){

totalPages=1;

}else{

totalPages=(totalRows+pageSize-1)/pageSize;

}

startRow; 算法:

startRow=(currentPage-1) * pageSize+1;

endRow; endRow=currentPage* pageSize;

2. 关于前端分页的一些问题

你可以后端写个服务方法,这个方法返回的内容就是分页数组信息,然后前端页面 在页面开始加载时,利用 ajax 异步请求这个服务方法获取到 分页信息。