分页程序是自己构造写的,分页的时候只使用了三个变量,一个是totalPages总页码,一个是当前页码currentPages,一个就是数据list集合。
见代码:
引用
<div class="pageNav">
<!--define the url of the previous page and next page-->
<s:url id="url_index" value="/pageAction.action">
<s:param name="assistDto.currentPages" value="1"></s:param>
</s:url>
<s:url id="url_pre" value="/pageAction.action">
<s:param name="assistDto.currentPages" value="#attr.assistDto.currentPages-1"></s:param>
</s:url>
<s:url id="url_next" value="/pageAction.action">
<s:param name="assistDto.currentPages" value="#attr.assistDto.currentPages+1"></s:param>
</s:url>
<s:url id="url_end" value="/pageAction.action">
<s:param name="assistDto.currentPages" value="#attr.assistDto.totalPages"></s:param>
</s:url>
<table align="center">
<tr>
<td>
<s:if test="#attr.assistDto.currentPages <= 1">首页 </s:if>
<s:else><s:a href="%{url_index}">首页 </s:a></s:else></td>
<td>
<s:if test="#attr.assistDto.currentPages > 1">
<s:a href="%{url_pre}">上一页 </s:a></s:if>
<s:else>上一页 </s:else></td>
<td>第${attr.assistDto.currentPages} 页 </td>
<td><s:if test="#attr.assistDto.currentPages < #attr.assistDto.totalPages">
<s:a href="%{url_next}">下一页 </s:a></s:if>
<s:else>下一页 </s:else></td>
<td><s:if test="#attr.assistDto.currentPages == #attr.assistDto.totalPages || #attr.assistDto.totalPages<=1">尾页 </s:if>
<s:else><s:a href="%{url_end}">尾页 </s:a></s:else></td>
<td>共${attr.assistDto.totalPages}页 </td>
</tr>
</table>
</div>
当前页和总页码是封装在一个辅助dto里面作为属性的。
关于思考是由于我们的的数据量达到了百万级以上的时候这样每分页一次就发出一个查询语句,如果是单表的虽然数据量大也还好点,如果是数据量大而且跨表查询,那很明显速度会慢下来。
有几种思路可以实现加速处理:
1.也就是分页嘛,不会每次查很多。
2.加索引。
3.存储过程。
4.分页的基础上查出多一些数据,比如100条,每页显示10,那么我们在service层的时候就判断一下当前页等信息然后从内存中读取这个数据。
最后一个是自己想的,暂时还有业务的东西没有处理完,还没时间测试一下。放这有空回来的时候看到测试测试。
分享到:
相关推荐
SSH分页 分页 通用分页 struts2分页
ssh分页 ssh分页ssh分页ssh分页ssh分页ssh分页
SSH分页_完整例子 SSH分页_完整例子 SSH分页_完整例子
好强大的ssh分页,封装的很好,适合初学者研究下,可以更快帮助初学者掌握分页机制,学起来不是很容易,但是当你学会了就豁然开朗,其他的分页直接可以藐视了,哈。。。我就是这样学过来的 有相关教程:...
SSH分页组件SSH分页组件SSH分页组件SSH分页组件
分页啊,分页啊。 我找了好久的SSH分页,没找到,只好自个写啦。
SSH分页技术详解与实例,有注释,能够看懂每一步,若再实际项目中用到,只需根据实际情况更改几处既可
ssh 分页代码ssh 分页代码ssh 分页代码ssh 分页代码ssh 分页代码ssh 分页代码ssh 分页代码ssh 分页代码ssh 分页代码
简单,高效的ssh分页源码,请依照资源说明操作
SSH 通用分页插件 可以用以所有的数据分页 带有条件查询
分页程序是web不可缺少的功能,下面讲一下如何在ssh下创建分页程序。 该分页在优点为:pager的功能配置都在基类,子类使用分页功能极容易,方便进行开发。 缺点:功能复杂
这个一个关于String+Spring+Hibernate框架,可以分页显示的实例代码.
SSH+Mysql无刷新分页实例,导入数据库,运行即可
按照 文档中的的内容轻松实现SSH分页,文档中包含 了 分页bean。直接复制即可使用。有详细的类和方法说明。
好的ssh分页代码,也是经典的分页开源代码!
ssh 分页显示 多行多列 ssh 分页显示 多行多列
ssh 分页组件,含使用示例,可直接使用,适用mysql,不支持oracle
SSH高级分页,很实用的!~ 扩展性很好,很好用!~
SSH实现分页实例
这是一个完整的ssh框架分页实例数据库使用mysql连接,适合入门级训练!