您的位置:首页 > 其它

网上商城之分页查询

2015-12-20 19:36 302 查看
      小编最近在做一个关于网上商城的项目。做任何一个项目都有关于查询方法的编写,在这里我重新完整的整理了一下分页查询的方法的书写。之前在做的项目的时候因为是做成绩分析,不涉及页面数据显示,所以还没有自己做过分页查询的功能,这次算是我第一次涉及到分页查询。那么下面我来说一些我的网上商城中涉及到的两种分页方法,仅提供核心代码。

     第一种分页查询是离线分页:

public List<Product> findHot() {
// 使用离线条件查询
DetachedCriteria criteria = DetachedCriteria.forClass(Product.class);
// 产讯热门商品,条件是is_host = 1
criteria.add(Restrictions.eq("is_hot", 1));
// 倒序输出查询结果:
criteria.addOrder(Order.desc("pdate"));
// 保存到值栈中:
List<Product> list = this.getHibernateTemplate().findByCriteria(
criteria, 0, 10);
return list;
}    第二种是先查询,然后再分页:

public PageBean<Order> findByUid(Integer uid,Integer page) {
PageBean<Order> pageBean = new PageBean<Order>();
// 设置当前的页数
pageBean.setPage(page);

//设置煤业显示记录数
int limit = 5;
pageBean.setLimit(limit);
//设置消息总记录数
int totalCount = 0;
totalCount = orderDao.findCountByUid(uid);
pageBean.setTotalCount(totalCount);
//
int totalPage = 0;
if(totalCount % limit == 0){
totalPage = totalCount / limit;
}else{
totalPage = totalCount / limit + 1;
}
pageBean.setTotalPage(totalPage);
//
int begin = (page - 1)*limit;
List<Order> list = orderDao.findPageByUid(uid,begin,limit);
pageBean.setList(list);
return pageBean;
}


     总结:
              我们之前做项目的时候有时候在这种功能上下的功夫不深,但是有时候我们需要做的更多的是这种关于客户体验的功能,用户体验做好了,我们的软件才有人用,我们才能有更好的发展空间!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: