日期:2014-05-17  浏览次数:20719 次

有关hibernate的问题
public List<TabCntvsOrder> findByDate(Date beginDate, Date endDate,Integer memberId,Integer pageNo,Integer pageSize) {
Session session=null;
List<TabCntvsOrder> order_list=new ArrayList<TabCntvsOrder>();
try {
session=this.getSession();
Criteria cta=session.createCriteria(TabCntvsOrder.class);
cta.add(Expression.eq("userId", memberId));
//用户查询总订单
cta.add(Expression.eq("orderType", 0));
cta.add(Expression.between("regdate", beginDate, endDate));
//分页
if(0!=pageNo&&0!=pageSize){
Integer index=(pageNo-1)*pageSize;
cta.setFirstResult(index);
cta.setMaxResults(pageSize);
}
order_list=cta.list();
} catch (RuntimeException re) {
log.info("find by date failed", re);
throw re;
}finally{
this.closeSession(session);
}
return order_list;
}

这个方法如何让它查询的数据 order by 一下

------解决方案--------------------
org.hibernate.criterion.Order orderby = org.hibernate.criterion.Order.asc(propertyName) 
cta.addOrder(orderby);

提示:propertyName是需要进行排序的字段,如果是降序排序需要改成desc方法。