Hibernate 中的分页显示
这是一个简单分页的的showAllNews.jsp:这儿仅是简单的实现.上下页部分还需大家去完善.

//showAllNews.jsp
<%@ page contentType=
"text/html; charset=GB2312" %>
<%@ page import=
"com.*, net.sf.hibernate.*,java.util.*" %>
<%@include file=
"trans.jsp"%>

<html>
<head>
<title>Hibernate Test</title>
<%
//清除缓存
response.setHeader(
"Pragma","no-cache");
response.setHeader(
"Cache-Control","no-cache");
response.setDateHeader(
"Expires",0);
%>
</head>
<table width=
"100%" border="1" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width=
"145">ID号</td>
<td width=
"54">类别</td>
<td width=
"471">主题</td>
<td width=
"144">发布时间</td>
<td width=
"145">管理</td>
</tr>



<%
String nums=request.getParameter(
"num");
if(nums==null)nums=
"0";
int num=0;
num=Integer.parseInt(nums);
net.sf.hibernate.Session hsession = HibernateUtil.currentSession();
Transaction tx = hsession.beginTransaction();

Criteria c =hsession.createCriteria(Devinfo.class);
c.setFirstResult(num);
c.setMaxResults(5);

//Query query = hsession.createQuery ("from Devinfo");

List list=c.list();
for (Iterator it = list.iterator(); it.hasNext();) {

Devinfo devinfo = (Devinfo) it.next();
%>
<tr>
<td><%=devinfo.getNewsid()%></td>
<td><%=devinfo.getTypeId()%></td>
<td><%=trans(devinfo.getSubject())%></td>
<td><%=devinfo.getCdate()%></td>
<td><a href=editNews.jsp?newsid=<%=devinfo.getNewsid()%>>编辑</a> <a href=delNews.jsp?newsid=<%=devinfo.getNewsid()%>> 删除</a></td>
</tr>
<%
}
hsession.flush();
tx.commit();
HibernateUtil.closeSession();
%>
</table>
<p><a href=showAllNews.jsp>首页</a> <a href=showAllNews.jsp?num=<%=num+5%>>下一页</a> <a href=showAllNews.jsp?num=<%=num-5%>>上一页</a></center>
</body>
</html>
Jason   2005-08-14 08:54:58 评论:2   阅读:4006   引用:0
bbs中的代码 @2005-08-14 22:31:44  Jason
我们的bbs分页是用什么方法,是上面这种方法吗?可能的话帖一些代码出来看看.
可以封装一下 @2005-08-14 19:11:15  hofman
实际应用的时候,应该在Service里面封装一下,将pno传进去,PageSize应该作为全局常量在inteface里面定义,而不要hard coding。

发表评论>>

署名发表(评论可管理,不必输入下面的姓名)

姓名:

主题:

内容: 最少15个,最长1000个字符

验证码: (如不清楚,请刷新)

小圣空间 版权没有 盗版必就