Example usage for org.hibernate.criterion Projections rowCount

List of usage examples for org.hibernate.criterion Projections rowCount

Introduction

In this page you can find the example usage for org.hibernate.criterion Projections rowCount.

Prototype

public static Projection rowCount() 

Source Link

Document

The query row count, ie.

Usage

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;
}