public List<Object> pageList(final String condition, page page, final String oby ,final String o) {
if(page==null){
page = new page();
page.setPageNow(1);
}
final int firstResult = page.getMaxResults()*(page.getPageNow()-1);
final int maxResult = page.getMaxResults();
Object ob= hibernateTemplate.execute(new HibernateCallback(){ public Object doInHibernate(Session session) {
Query query = session.createQuery("from User u "+condition+" order by "+ oby + " "+ o)
.setFirstResult(firstResult).setMaxResults(maxResult); return query.list();
}
});
return (List<Object>)ob;
}
if(page==null){
page = new page();
page.setPageNow(1);
}
final int firstResult = page.getMaxResults()*(page.getPageNow()-1);
final int maxResult = page.getMaxResults();
Object ob= hibernateTemplate.execute(new HibernateCallback(){ public Object doInHibernate(Session session) {
Query query = session.createQuery("from User u "+condition+" order by "+ oby + " "+ o)
.setFirstResult(firstResult).setMaxResults(maxResult); return query.list();
}
});
return (List<Object>)ob;
}
解决方案 »
- Hibernate 问题请教
- myeclipse
- 關于DWR同步設置的怪異問題
- ClassNotFoundException: org.hibernate.hql.ast.HqlToken
- 为什么我eclipse装了国际化插件 propeities文件还是插件提示呢
- hibernate使用中.dtd出现的问题
- 请教:使用schema文件检测xml文件的数据
- 希望大家帮忙解决?100分够不够?
- jboss下配置sqlserver数据源DATASOURCE1,在web下可看到已OK!在jbuilder下运行出现javax.naming.NameNotFoundException: DATASOURCE1 not
- 刚看EJB,不懂乱问.
- 急!菜鸟求助:如何创建返回类型为字符串的XML文件
- spring事务的实现原理,不搞明白,很不爽。
public class page{
private int pageNow ;
private int pageCount ;//总共多少页
private int nums ;
private int maxResults=10; public void setPageNow(int pageNow){.....
}public page getPage(page page){
int l = (Integer)session.createQuery("select count(*) from User ").setFirstResult(0).setMaxResults(1).uniqueResult();;
if(l%page.getMaxResult()==0){
page.pageCount(l/page.getMaxResult());
}else{page.pageCount(l/page.getMaxResult()+1); }
page.setNums(l);
return page;
}
上面是dao里面的,你可以在action里面调用list()和getPage(page page)这两个方法,然后将获得的List 和page 传给跳转的页面
分页查询出的记录:
<s:iterator id="f" value="%{ulist }" >
<tr>
<td ><s:property value="#f.name" /></td>
<td>
<s:if test="#f.sex==0">保密</s:if>
<s:elseif test="#f.sex==1">男</s:elseif>
<s:elseif test="#f.sex==2">女</s:elseif>
</td>
<td><s:property value="#f.integral" /></td>
</tr>
</s:iterator>这里是分页的:
<s:if test="%{page.nums<=0}">没有用户</s:if>
<s:else>
总共有 <s:property value="%{page.nums}" /> 条记录
<s:if test="%{page.pageNow>1}">
<a href="User_list?condition=<s:property value='%{condition}'/>&page.pageNow=<s:property value='%{page.pageNow-1}'/>">上一页</a>
</s:if>
<%
int i=1;
%>
<s:iterator begin="1" end="%{page.pageCount}">
<a href="User_list?condition=<s:property value='%{condition}'/>&page.pageNow=<s:property value='%{#request.i}'/>"><%=i++ %></a>
</s:iterator>
<s:if test="%{page.pageNow < page.pageCount}">
<a href="User_list?condition=<s:property value='%{condition}'/>&page.pageNow=<s:property value='%{page.pageNow+1}'/>">下一页</a>
</s:if>
</s:else>
有点乱,但是大致就是这样了。希望能对你有帮助。