码迷,mamicode.com
首页 > 其他好文 > 详细

SSH整合总结

时间:2017-09-07 21:30:25      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:聚合函数   integer   nat   val   ring   intvalue   开始   lan   page   

离线查询对象使用(web层的Action中)

DetachedCriteria dc = DetachedCriteria.forClass(Customer.class);
if(Strings.isNotBlank(customer.getCust_name())){
  dc.add(Restrictions.like("cust_name", "%"+customer.getCust_name()+"%"));
}

离线查询对象获取总记录数

错误写法(获取的是所有数据,每个数据是一个对象,所以非常浪费资源)

public Integer getTotalCount(DetachedCriteria dc) {
  List<Customer> customerList = (List<Customer>) getHibernateTemplate().findByCriteria(dc);
  return customerList.size();
}

正确写法

public Integer getTotalCount(DetachedCriteria dc) {
    //设置查询的聚合函数,总计路数
    dc.setProjection(Projections.rowCount());
    List<Long> list = (List<Long>) getHibernateTemplate().findByCriteria(dc);
    //清空之前设置的聚合函数(防止再次使用dc)
    dc.setProjection(null);
    if(list!=null && list.size() > 0){
        Long count = list.get(0);
        return count.intValue();
    } else {
        return null;
    }
}

通过离线查询对象获取分页中的显示数据(list)

public List<Customer> getPageList(DetachedCriteria dc, int start, Integer pageSize) {
    //start 从第几条开始显示  pageSize页面显示的条数
    List<Customer> lsit = (List<Customer>) getHibernateTemplate().findByCriteria(dc, start, pageSize);
    return lsit;
}

 

SSH整合总结

标签:聚合函数   integer   nat   val   ring   intvalue   开始   lan   page   

原文地址:http://www.cnblogs.com/ms-grf/p/7491639.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!