普通分页笔记

普通分页笔记-----------------------

需要单独提出一个page.jsp页面
其他页面包含page.jsp这个页面
Bootstrap组件-分页
放入page.jsp

<nav aria-label="Page navigation">
<ul class="pagination">
<li>
<a href="#" aria-label="Previous">
<span aria-hidden="true">&laquo;</span>
</a>
</li>
<li><a href="#">1</a></li>
<li><a href="#">2</a></li>
<li><a href="#">3</a></li>
<li><a href="#">4</a></li>
<li><a href="#">5</a></li>
<li>
<a href="#" aria-label="Next">
<span aria-hidden="true">&raquo;</span>
</a>
</li>
</ul>
</nav>

新建一个PageUtil类
属性: 总记录数totalCount----sql从数据库获取
页大小pageSize----每页显示的条数,可以赋值
总页数pageCount
当前页pageIndex

获取总记录数之后,可以得到总页数
总记录数>0
1.总记录数%页大小==0 总页数=总记录数/页大小
2.总记录数%页大小!==0 总页数=总记录数/页大小+1

Dao层getTotalCount();
DaoImpl实现----------

Service层
ServiceImpl

listServlet------------------------------------------------
生成pageUtil对象
pageUtil util=new pageUtil ()
获取用户的输入pageIndex当前页
如果是第一进入,赋值 pageIndex=1
给总记录数赋值,调用Service.getAll,获得总记录数

调用Service层----------分页显示------------
service.getByPage(util)
ServiceImpl 实现
分页条件:
SELECT * FROM 表 LIMIT ,起始条? 页大小?
Sql:Select * From 表 LIMIT ?,?
起始条 = (pageIndex-1)* pageSize
==> =(util.getPageIndex()-1)*util.getPageSize()
将分页list集合和util保存到作用域
页面转发到前台主页面main.jsp

前台main.jap显示分页-----------------
如果放在FORM表单一起提交,需要form增加隐藏域
<input type="hidden" name="pageIndex"存放变量,用户点击的页码值>

伪协议href="javascript:"进入当前的javascript脚本
<nav aria-label="Page navigation">
<ul class="pagination">
<li><a href="javascript:page(document.form[0],1)" aria-label="Previous">首页</a></li>
<li><a href="javascript:page(document.form[0],${pageUtil.pageIndex-1})" aria-label="Previous">上一页</a></li>
<li><a href="javascript:page(document.form[0],${pageUtil.pageIndex+1})" aria-label="Previous">下一页</a></li>
<li><a href="javascrip:page(document.form[0],pageTotalCount)">尾页</a></li>
<li>
</nav>

对应的javascript脚本
function page(form,pageIndex变量){
//获取form表单中的隐藏域,赋值
//form.pageIndex.value=pageIndex变量;
//form.submit();
window.location.href="/listServlet?pageIndex="+pageIndex变量,点击的值;
}

给添加条件if

<nav aria-label="Page navigation">
<ul class="pagination">
<c:if test="${pageUtil.pageIndex>1}">
<li><a href="javascript:page(1)" aria-label="Previous">首页</a></li>
<li><a href="javascript:page(${pageUtil.pageIndex-1})" aria-label="Previous">上一页</a></li>
</c:if>

<c:if test="${pageUtil.pageIndex<pageUtil.pageCount}">
<li><a href="javascript:page(${pageUtil.pageIndex+1})" aria-label="Previous">下一页</a></li>
<li><a href="javascrip:page(pageTotalCount)">尾页</a></li>
<li>
</c:if>
</nav>

时间: 2024-08-24 12:53:45

普通分页笔记的相关文章

php分页笔记

在做留言板的时候,用到了分页,所以写了这个分页笔记 既然已经开始写分页了,肯定掌握了了php的一些知识以及mysql的基本操作 在做分页的时候,我也遇到了很多问题,但是大家不要怕,无论什么问题总会有解决的办法的 首先我们应该对数据进行处理,如果有10条,或100条数据或许你不会感觉到有什么, 但是如果有1000条数据在一个页面上,你肯定会看的不耐烦,现在我们设置每个页面显示10条,就是分成100页. 相应的数据库操作: Select * from table limit 0,10 这是一句很简单

OData 协议 asp.net Mvc WebAPI分页笔记

// 针对 OData协议的Mvc WebAPI 2.2 分页插件     ; (function ($, window) {         var tbPQ = function () {         };         // get the length from 'urlAndParamter'         function getCount(urlAndParamter, ok_handler) {             $.ajax(urlAndParamter, {  

django pagination 分页笔记

pip install django-pagination 配置setting INSTALLED_APPS = (                     'pagination',                   )  MIDDLEWARE_CLASSES = (                'pagination.middleware.PaginationMiddleware',           ) TEMPLATE_CONTEXT_PROCESSORS = (     ###a

javaweb笔记—04(预编译和泛型)

预编译:ps对象1.ps可进行预编译,占位符传值,性能高于sta的(数据库驱动层有优化)2.比较灵活,数据库将预编译的SQL缓存了,第二次访问,就不用预编译,直接执行.3.较为安全,不会发生SQL注入.4.简单,不用拼接SQL,少出错. SQL注入: select * from user where name = '"+name+"' or 1=1and pwd = '"+pwd+"' or 1=1; 5.把结果集中的数据放到list集合中的方法while(rs.n

【知了堂学习笔记】JSP页面数据分页实现(一)——分页概念以及主流数据库的分页查询

一.分页简介 1.分页,就是一种将数据库里的数据一部分展示给用户的技术.为什么要这样做呢?因为一般来说用户在查询时数据是非常多的,当一个页面不能显示所有数据时,我们就要对查询的数据进行分页,就像我们的书本分成一页一页一样.最简单的例子就是百度,当你百度时,成千上万的数据,并不是呈现在一个页面的. 2.分页的实现方式 1)假分页(不推荐):什么是假分页呢?假分页就是一次性将数据库里的数据全部取出来,存储在页面中,然后再将数据分别展示出来.这种假分页在数据少的还可以玩玩,当数据多起来的时候,这种方式

02 - Unit08:搜索笔记功能、搜索分页、处理插入数据库乱码问题

搜索笔记功能 按键监听事件 $("#search_note").keydown(function(event){ var code=event.keyCode; if(code==13){ 请求发送 } }) select * from cnshare cnshare_title like '%' 发送Ajax请求 事件绑定:键盘监听事件(keydown) 获取参数:keyword,作为模糊查询的基础 发送请求:/share/find.do 服务器处理 ShareController.

[原创]java WEB学习笔记90:Hibernate学习之路-- -HQL检索方式,分页查询,命名查询语句,投影查询,报表查询

本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------

笔记: JDBC分页&amp;监听器

JDBC分页: * 概述: * 定义:将一页显示的内容,分成两页或两页以上来显示. * 分类: * 物理分页: * 就是在查询数据库记录时,已经实现分页. * 这种分页技术一定是数据库提供.(不同数据库实现方式不同) * 逻辑分页: * 就是查询数据库所有记录,然后在通过Java代码实现分页效果. * 逻辑分页与数据库产品本身是无关的. * 物理分页: * MySQL的Limit: * 语法:SELECT * FROM 表名 LIMIT 位置偏移量,行数; * 问题:Limit是否可以实现分页效

分页框架pager-taglib学习笔记

下面的笔记来自于孔浩老师的视频教程和我自己的开发实践. 使用Pager-taglib可以帮助我们快速开发分页处理. pager-taglib-2.0.war这是我们第1次直观地认识jar包.直接放到tomcat的webapp目录下面,就可以启动项目,查看帮助文档.说明:拷贝完之后,可以改一个名字,方便我们写访问的路径.使用的步骤:(1)将相应包拷贝到lib目录(pager-taglib.jar),另外一个是源码包,貌似可以不拷贝,我还没试过.(2)在jsp页面引入相应的分页标签库.引入标签 pr