SSH--分页处理
2017-10-05 20:55
295 查看
Action代码:
/*
* 分页查询处理
*/
@SuppressWarnings({ "unused", "unchecked" })
public String execute(){
String hql = "select count(*) from Goods";
Integer totalNum = (int) goodsBid.totalNum(hql).longValue();
pageSize = 3;
totalPage = (totalNum%pageSize==0)?(totalNum/pageSize):(totalNum/pageSize+1);
if(pageNum == null){
pageNum = 1;
}
if(pageNum < 1){
pageNum = 1;
}
if(pageNum > totalPage){
pageNum = totalPage;
}
String hql2 = "from Goods order";
List list = goodsBid.searchByHql(hql2,(pageNum-1)*pageSize,pageSize);
request.put("onSaleGoodsList", list);
return "OnSaleGoodsList";
}
DaoImpl层实现:
/*
* 通过Hql语句 分页查询当前页的商品列表
*/
@Override
public Long totalNum(String hql) {
return (Long) super.getHibernateTemplate().find(hql).iterator().next();
}
/*
* 获取商品记录总数
*/
@SuppressWarnings("unchecked")
@Override
public List searchByHql(final String hql,final Integer begin,final Integer length) {
return super.getHibernateTemplate().execute(new HibernateCallback() {
@Override
public Object doInHibernate(Session session) throws HibernateException {
List list = session.createQuery(hql)
.setFirstResult(begin)
.setMaxResults(length)
.list();
return list;
}
});
}
jsp显示层:
<s:property value="pageNum"/>/<s:property value="totalPage"/>
<s:url action="page" var="firstPage">
<s:param name="pageNum">1</s:param>
</s:url><s:a href="%{firstPage}">首页</s:a>
<s:url action="page" var="prePage">
<s:param name="pageNum">
<s:property value="pageNum-1"/>
</s:param>
</s:url><s:a href="%{prePage}">上一页</s:a>
<s:url action="page" var="nextPage">
<s:param name="pageNum">
<s:property value="pageNum+1"/>
</s:param>
</s:url><s:a href="%{nextPage}">下一页</s:a>
<s:url action="page" var="lastPage">
<s:param name="pageNum">
<s:property value="totalPage"/>
</s:param>
</s:url><s:a href="%{lastPage}">末页</s:a>
/*
* 分页查询处理
*/
@SuppressWarnings({ "unused", "unchecked" })
public String execute(){
String hql = "select count(*) from Goods";
Integer totalNum = (int) goodsBid.totalNum(hql).longValue();
pageSize = 3;
totalPage = (totalNum%pageSize==0)?(totalNum/pageSize):(totalNum/pageSize+1);
if(pageNum == null){
pageNum = 1;
}
if(pageNum < 1){
pageNum = 1;
}
if(pageNum > totalPage){
pageNum = totalPage;
}
String hql2 = "from Goods order";
List list = goodsBid.searchByHql(hql2,(pageNum-1)*pageSize,pageSize);
request.put("onSaleGoodsList", list);
return "OnSaleGoodsList";
}
DaoImpl层实现:
/*
* 通过Hql语句 分页查询当前页的商品列表
*/
@Override
public Long totalNum(String hql) {
return (Long) super.getHibernateTemplate().find(hql).iterator().next();
}
/*
* 获取商品记录总数
*/
@SuppressWarnings("unchecked")
@Override
public List searchByHql(final String hql,final Integer begin,final Integer length) {
return super.getHibernateTemplate().execute(new HibernateCallback() {
@Override
public Object doInHibernate(Session session) throws HibernateException {
List list = session.createQuery(hql)
.setFirstResult(begin)
.setMaxResults(length)
.list();
return list;
}
});
}
jsp显示层:
<s:property value="pageNum"/>/<s:property value="totalPage"/>
<s:url action="page" var="firstPage">
<s:param name="pageNum">1</s:param>
</s:url><s:a href="%{firstPage}">首页</s:a>
<s:url action="page" var="prePage">
<s:param name="pageNum">
<s:property value="pageNum-1"/>
</s:param>
</s:url><s:a href="%{prePage}">上一页</s:a>
<s:url action="page" var="nextPage">
<s:param name="pageNum">
<s:property value="pageNum+1"/>
</s:param>
</s:url><s:a href="%{nextPage}">下一页</s:a>
<s:url action="page" var="lastPage">
<s:param name="pageNum">
<s:property value="totalPage"/>
</s:param>
</s:url><s:a href="%{lastPage}">末页</s:a>
相关文章推荐
- ssh项目中页面分页展现的处理
- ssh分页处理
- ssh分页实例
- DataGridView分页处理
- [ssh]关于ssh中查询并分页方法的记录
- ElasticSearch中search after处理深分页介绍
- 分页处理技巧
- 把一般的查询sql处理成分页用的sql
- sybase的分页处理
- 最精简的分页处理方式
- JDBC(二)大结果集分页,批处理,学习
- 局域网内SSH登陆等待时间长,反应慢的处理方法
- 主题:ssh整合分页
- JS Datatables插件server-side方式处理分页的示例代码段
- ssh中处理事务的几种方式
- 数据的分页处理
- Hibernate3.2对sqlserver2005查询分页的处理
- MySQL处理千万级数据查询、分页
- ssh实现分页功能
- 特殊分页处理