知识大全 Hibernate分页的设计和编码
Posted 知
篇首语:春衣少年当酒歌,起舞四顾以笑和。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Hibernate分页的设计和编码相关的知识,希望对你有一定的参考价值。
Hibernate分页的设计和编码 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
当前页码的表单参数 listuser do?page=
同时转换成一个 int 类型的页码变量
int currentPage = Integer parseInt(
request getParameter( page ) // 当前页
下一页 listuser do?page=$currentPage+
上一页 listuser do?page=$currentPage
一页显示多少数据
int pageSize = ;//每页显示的数据数
总页数 totalPage
) 先从数据库取得总记录数
dao UserDAO#getUserTotalCount()
int totalCount = executeQuery( select count(*) from Users )
) 根据一页的数据类计算出总页数
dao UserManager#getTotalPage(int pageSize)
// 得到页面总数
int totalPageCount = ((totalCount + pageSize) ) / pageSize;
if(totalPageCount == )
totalPageCount = ;
从数据库里把第currentPage页的数据读取出来(Hibernate) DAO 层的代码
dao UserDAO#findPagedAll(int currentPage int pageSize)
两个参数 currentPage 当前页(从 开始的)
pageSize 取多少数据
String queryString = from User ;
Query queryObject = getSession() createQuery(queryString)
queryObject setFirstResult((currentPage ) * pageSize)
queryObject setMaxResults(pageSize)
List result = queryObject list()
时间
在前台显示上下页的链接 并根据总页数的上下限来避免让用户跳到第 页或者比最大页数还大的页码哪里
<c:if test= $currentPage > >
[ 上一页的链接 ]
</c:if>
<c:if test= $currentPage <= >
[ 上一页的文本 ]
</c:if>
通过 forEach 来显示数据
<c:forEach items= $users var= user >
$user id
$user username
<c:/forEach>
通过下拉菜单来跳转页面
转到
<script>
// 页面跳转函数
// 参数 包含网址的选择框(SELECT元素)
function jumpPage(select)
var newUrl = /hibernate_page/index jsp?page= + select value;
//alert(newUrl)
document location = newUrl;
</script>
<! 输出 HTML SELECT 元素 并选中当前页面编码 >
<select onchange= jumpPage(this) >
<option value= selected> 页</option>
<option value= > 页</option>
cha138/Article/program/Java/ky/201311/28622相关参考