Examples of CriteriaImpl


Examples of org.hibernate.internal.CriteriaImpl

  public void setCriteria(Criteria criteria) {
    if ( criteria != null ) {
      isExplicitCriteria = true;
      sizeSafe = true;
      if ( criteria instanceof CriteriaImpl ) {
        CriteriaImpl impl = (CriteriaImpl) criteria;
        //restriction of subcriteria => suspect
        //TODO some subcriteria might be ok (outer joins)
        sizeSafe = !impl.iterateExpressionEntries().hasNext() && !impl.iterateSubcriteria().hasNext();
      }
    }
    else {
      sizeSafe = true;
      isExplicitCriteria = false;
View Full Code Here

Examples of org.hibernate.internal.CriteriaImpl

   *
   * @param detachedCriteria
   * @return
   */
  protected int findCriteriaRowCount(final Criteria criteria) {
    CriteriaImpl impl = (CriteriaImpl) criteria;
    // 先把Projection、ResultTransformer、OrderBy取出来,清空三者后再执行Count操作
    Projection projection = impl.getProjection();
    ResultTransformer transformer = impl.getResultTransformer();
    // 将orderBy对象中的排序字段存入数组中
    List<?> orderEntries = (List<?>) accessor.getValue(criteria);
    // 将排序字段设置为空
    accessor.setValue(Collections.emptyList(), criteria);
    // 执行Count查询
    int count = ((Number) criteria.setProjection(Projections.rowCount()).uniqueResult()).intValue();
    // 将取出的参数设回bean
    impl.setProjection(projection);
    if (projection == null && transformer == null) {
      impl.setResultTransformer(CriteriaSpecification.ROOT_ENTITY);
    } else if (transformer != null) {
      impl.setResultTransformer(transformer);
    }
    accessor.setValue(orderEntries, impl);
    return count;

  }
View Full Code Here

Examples of org.hibernate.internal.CriteriaImpl

  public void setCriteria(Criteria criteria) {
    if ( criteria != null ) {
      isExplicitCriteria = true;
      sizeSafe = true;
      if ( criteria instanceof CriteriaImpl ) {
        CriteriaImpl impl = (CriteriaImpl) criteria;
        //restriction of subcriteria => suspect
        //TODO some subcriteria might be ok (outer joins)
        sizeSafe = !impl.iterateExpressionEntries().hasNext() && !impl.iterateSubcriteria().hasNext();
      }
    }
    else {
      sizeSafe = true;
      isExplicitCriteria = false;
View Full Code Here

Examples of org.hibernate.internal.CriteriaImpl

 
  private final CriteriaImpl impl;
  private final Criteria criteria;
 
  protected DetachedCriteria(String entityName) {
    impl = new CriteriaImpl(entityName, null);
    criteria = impl;
  }
View Full Code Here

Examples of org.hibernate.internal.CriteriaImpl

    impl = new CriteriaImpl(entityName, null);
    criteria = impl;
  }
 
  protected DetachedCriteria(String entityName, String alias) {
    impl = new CriteriaImpl(entityName, alias, null);
    criteria = impl;
  }
View Full Code Here

Examples of org.hibernate.internal.CriteriaImpl

 
  private final CriteriaImpl impl;
  private final Criteria criteria;
 
  protected DetachedCriteria(String entityName) {
    impl = new CriteriaImpl(entityName, null);
    criteria = impl;
  }
View Full Code Here

Examples of org.hibernate.internal.CriteriaImpl

    impl = new CriteriaImpl(entityName, null);
    criteria = impl;
  }
 
  protected DetachedCriteria(String entityName, String alias) {
    impl = new CriteriaImpl(entityName, alias, null);
    criteria = impl;
  }
View Full Code Here

Examples of org.hibernate.internal.CriteriaImpl

   */
  public PageList getPageList(final CriteriaQuery cq, final boolean isOffset) {

    Criteria criteria = cq.getDetachedCriteria().getExecutableCriteria(
        getSession());
    CriteriaImpl impl = (CriteriaImpl) criteria;
    // 先把Projection和OrderBy条件取出来,清空两者来执行Count操作
    Projection projection = impl.getProjection();
    final int allCounts = ((Long) criteria.setProjection(
        Projections.rowCount()).uniqueResult()).intValue();
    criteria.setProjection(projection);
    if (projection == null) {
      criteria.setResultTransformer(CriteriaSpecification.ROOT_ENTITY);
View Full Code Here

Examples of org.hibernate.internal.CriteriaImpl

  public DataTableReturn getDataTableReturn(final CriteriaQuery cq,
      final boolean isOffset) {

    Criteria criteria = cq.getDetachedCriteria().getExecutableCriteria(
        getSession());
    CriteriaImpl impl = (CriteriaImpl) criteria;
    // 先把Projection和OrderBy条件取出来,清空两者来执行Count操作
    Projection projection = impl.getProjection();
    final int allCounts = ((Long) criteria.setProjection(
        Projections.rowCount()).uniqueResult()).intValue();
    criteria.setProjection(projection);
    if (projection == null) {
      criteria.setResultTransformer(CriteriaSpecification.ROOT_ENTITY);
View Full Code Here

Examples of org.hibernate.internal.CriteriaImpl

   */
  public DataGridReturn getDataGridReturn(final CriteriaQuery cq,
      final boolean isOffset) {
    Criteria criteria = cq.getDetachedCriteria().getExecutableCriteria(
        getSession());
    CriteriaImpl impl = (CriteriaImpl) criteria;
    // 先把Projection和OrderBy条件取出来,清空两者来执行Count操作
    Projection projection = impl.getProjection();
    final int allCounts = ((Long) criteria.setProjection(
        Projections.rowCount()).uniqueResult()).intValue();
    criteria.setProjection(projection);
    if (projection == null) {
      criteria.setResultTransformer(CriteriaSpecification.ROOT_ENTITY);
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.