List of usage examples for org.hibernate.criterion Projections rowCount
public static Projection rowCount()
From source file:com.askme.dao.TagDAOImpl.java
@Override public Long countAll() { return (Long) sessionFactory.getCurrentSession().createCriteria(Tag.class) .setProjection(Projections.rowCount()).uniqueResult(); }
From source file:com.askme.dao.UserDAOImpl.java
@Override public Long countAll() { return (Long) sessionFactory.getCurrentSession().createCriteria(User.class) .setProjection(Projections.rowCount()).uniqueResult(); }
From source file:com.bean.StatisticBean.java
public List<Object[]> getTopUserMostPost() { Dao dao = new Dao(); Criteria c = dao.createCriteria(Property.class); ProjectionList proj = Projections.projectionList(); proj.add(Projections.groupProperty("users")); proj.add(Projections.rowCount(), "Count"); c.setProjection(proj);// ww w . j av a 2 s.c om c.addOrder(Order.desc("Count")); c.setFirstResult(0); c = selectTopUserMostPost == 0 ? c.setMaxResults(10) : c.setMaxResults(selectTopUserMostPost); List<Object[]> a = c.list(); return a; }
From source file:com.bean.StatisticBean.java
public List<Object[]> getTopPostMostFav() { Dao dao = new Dao(); Criteria c = dao.createCriteria(FavoriteProperty.class); ProjectionList proj = Projections.projectionList(); proj.add(Projections.groupProperty("property")); proj.add(Projections.rowCount(), "Count"); c.setProjection(proj);//from w w w .ja va 2s .c om c.addOrder(Order.desc("Count")); c.setFirstResult(0); c = selectTopPostMostFav == 0 ? c.setMaxResults(10) : c.setMaxResults(selectTopPostMostFav); List<Object[]> a = c.list(); return a; }
From source file:com.bloatit.data.DaoActor.java
License:Open Source License
/** * This method use a HQL request. If you intend to use "getByLogin" or * "getByName", "exist" is useless. (In that case you'd better test if * getByLogin != null, to minimize the number of HQL request). * /* w w w. java 2s .c om*/ * @param login the login we are looking for. * @return true if found. */ public static boolean loginExists(final String login) { if (login == null) { return false; } final Session session = SessionManager.getSessionFactory().getCurrentSession(); final Criteria c = session.createCriteria(DaoActor.class).setProjection(Projections.rowCount()) .add(Restrictions.like("login", login).ignoreCase()); return ((Long) c.uniqueResult()) > 0; }
From source file:com.bookselling.dao.GenericDao.java
@Override public long count() { return (long) getSession().createCriteria(registeredClass()).setProjection(Projections.rowCount()) .uniqueResult();/*from ww w. j a v a 2 s . co m*/ }
From source file:com.bookselling.dao.RoleDaoImpl.java
@Override public PaginationData filter(RoleFilterForm criteriaForm, int first, int items) { //parse to neccessary form RoleFilterForm form = criteriaForm;/*from www . j a va 2 s. co m*/ Criteria criteria = getSession().createCriteria(Role.class); //get data from filter form String keyword = form.getKeyword(); Set<Permission> permissions = form.getPermissions(); Integer permissionIds[] = new Integer[permissions.size()]; for (int i = 0; i < permissions.size(); i++) permissionIds[i] = permissions.iterator().next().getId(); //setup criteria criteria.createAlias("permissions", "psm").add(Restrictions.like("name", "%" + keyword + "%")) .add(Restrictions.in("psm.id", permissionIds)); //start querying List<Role> roles = criteria.list(); //init proxy obj for (Role role : roles) HibernateInitSupport.initRole(role); //pagination PaginationData paginationData = new PaginationData( (long) criteria.setProjection(Projections.rowCount()).uniqueResult(), items, first, roles); return paginationData; }
From source file:com.bookselling.dao.SellerInvoiceDaoImpl.java
@Override public PaginationData<SellerInvoice> get(User user, int first, int items) { Criteria criteria = getSession().createCriteria(SellerInvoice.class); criteria.createAlias("seller", "sl").add(Restrictions.eq("sl.id", user.getId())); criteria.setFirstResult(first);// w ww . j a v a2 s. co m criteria.setMaxResults(items); Set<SellerInvoice> sellerInvoices = new HashSet<>(criteria.list()); HibernateInitSupport.setCls(SellerInvoice.class); for (SellerInvoice invoice : sellerInvoices) HibernateInitSupport.initDomain(invoice); PaginationData paginationData = new PaginationData( (long) criteria.setProjection(Projections.rowCount()).uniqueResult(), items, first, sellerInvoices); return paginationData; }
From source file:com.bookselling.dao.SellingPostDaoImpl.java
@Override public PaginationData<SellingPost> getBestSelling(int first, int items) { SQLQuery sqlQuery = getSession().createSQLQuery("select boughtEntityId, sum(quatity) " + "from tradedetail trd " + "group by boughtEntityId " + "order by sum(quatity) desc"); sqlQuery.setFirstResult(first).setMaxResults(items); List result = sqlQuery.list(); Integer boughtEntityIds[] = new Integer[result.size()]; int index = 0; for (Object rows : boughtEntityIds) { Object[] row = (Object[]) rows; boughtEntityIds[index++] = Integer.valueOf((String) row[0]); }/*ww w. j a v a 2 s. c o m*/ Criteria criteria = getSession().createCriteria(SellingPost.class); criteria.add(Restrictions.eq("status", SellingPostStatus.CONFIRM)) .add(Restrictions.in("id", boughtEntityIds)); Set<SellingPost> posts = new HashSet<>(criteria.list()); HibernateInitSupport.setCls(SellingPost.class); for (SellingPost post : posts) HibernateInitSupport.initDomain(post); PaginationData paginationData = new PaginationData( (long) criteria.setProjection(Projections.rowCount()).uniqueResult(), items, first, posts); return paginationData; }
From source file:com.bookselling.dao.SubjectDaoImpl.java
@Override public PaginationData filter(SubjectFilterForm form, int first, int items) { Criteria criteria = getSession().createCriteria(Subject.class); //Get keyword String keyword = "%" + form.getKeyword() + "%"; //Set up criteria criteria.add(Restrictions.like("name", keyword)); //Get list//from ww w. j a va 2 s. c o m Set<Subject> subjects = new LinkedHashSet<>(criteria.list()); //pagination PaginationData paginationData = new PaginationData( (long) criteria.setProjection(Projections.rowCount()).uniqueResult(), items, first, subjects); return paginationData; }