criteria进行分页查询

xiaoxiao2025-02-06  12

public List findStockByStockPO(List Parameter1, int from, int size, StockPO po) { logger.info("##StartfindStockByStockPO"); List list = new ArrayList(); List result = new ArrayList(); super.getSession().clear(); Criteria criteria = super.getSession().createCriteria(StockPO.class); criteria.add(Restrictions.eq("stockPK.country", po.getStockPK() .getCountry())); criteria.add(Restrictions.eq("marketType", po.getMarketType())); criteria.add(Restrictions.eq("currencyType", po.getCurrencyType())); if (null != po.getStockPK().getStockNO()) criteria.add(Restrictions.eq("stockPK.stockNO", po.getStockPK() .getStockNO())); if (null != po.getStockInternationalId()) criteria.add(Restrictions.eq("stockInternationalId", po .getStockInternationalId())); if (null != po.getStockReservationType4Entity()) criteria.add(Restrictions.eq("stockReservationType4Entity", po .getStockReservationType4Entity())); if (null != po.getStockReservationType4TDCC()) criteria.add(Restrictions.eq("stockReservationType4TDCC", po .getStockReservationType4TDCC())); if (null != po.getStockReservationType4Strip()) criteria.add(Restrictions.eq("stockReservationType4Strip", po .getStockReservationType4Strip())); criteria.setFirstResult(from); criteria.setMaxResults(size); //from为起始页数size为一页10条数据 //获得10条记录的集合 result = criteria.list(); list.add(0, result); criteria.setFirstResult(0); criteria.setProjection(Projections.projectionList().add( Projections.rowCount())); //获得满足条件的总记录数 int count = ((Integer) criteria.uniqueResult()).intValue(); list.add(1, new Integer(count)); logger.info("##LIST" + list.size() + "--" + count); return list; }  
转载请注明原文地址: https://www.6miu.com/read-5024098.html

最新回复(0)