org.hibernate.criterion.Restrictions#or ( )源码实例Demo

下面列出了org.hibernate.criterion.Restrictions#or ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: sakai   文件: HibernateCriterionUtils.java
public static Criterion CriterionInRestrictionSplitter(String property, Collection<?> values) {
    Objects.requireNonNull(property);
    Objects.requireNonNull(values);

    Criterion criterion = null;
    List<?> list = new ArrayList<>(values);
    int listSize = list.size();

    for (int i = 0; i < listSize; i += MAX_NUMBER_OF_SQL_PARAMETERS_IN_LIST) {
        List<?> subList;
        if (listSize > i + MAX_NUMBER_OF_SQL_PARAMETERS_IN_LIST) {
            subList = list.subList(i, (i + MAX_NUMBER_OF_SQL_PARAMETERS_IN_LIST));
        } else {
            subList = list.subList(i, listSize);
        }
        if (criterion == null) {
            criterion = Restrictions.in(property, subList);
        } else {
            criterion = Restrictions.or(criterion, Restrictions.in(property, subList));
        }
    }
    return criterion;
}
 
源代码2 项目: sakai   文件: HibernateCriterionUtils.java
public static Criterion CriterionInRestrictionSplitter(String property, Collection<?> values) {
    Objects.requireNonNull(property);
    Objects.requireNonNull(values);

    Criterion criterion = null;
    List<?> list = new ArrayList<>(values);
    int listSize = list.size();

    for (int i = 0; i < listSize; i += MAX_NUMBER_OF_SQL_PARAMETERS_IN_LIST) {
        List<?> subList;
        if (listSize > i + MAX_NUMBER_OF_SQL_PARAMETERS_IN_LIST) {
            subList = list.subList(i, (i + MAX_NUMBER_OF_SQL_PARAMETERS_IN_LIST));
        } else {
            subList = list.subList(i, listSize);
        }
        if (criterion == null) {
            criterion = Restrictions.in(property, subList);
        } else {
            criterion = Restrictions.or(criterion, Restrictions.in(property, subList));
        }
    }
    return criterion;
}
 
源代码3 项目: AIDR   文件: CollectionRepositoryImpl.java
@Override
public Long getStoppedCollectionsCount(String terms) {
	Criteria criteria = getHibernateTemplate().getSessionFactory().getCurrentSession().createCriteria(Collection.class);
	criteria.setProjection(Projections.projectionList()
			.add(Projections.property("id"), "id"));
	
	LogicalExpression or = Restrictions.or(
			Restrictions.eq("status", CollectionStatus.STOPPED),
			Restrictions.eq("status", CollectionStatus.NOT_RUNNING)
			);
	
	LogicalExpression orAll = Restrictions.or(
			or,
			Restrictions.eq("status", CollectionStatus.FATAL_ERROR)
			);
	
	criteria.add(orAll);
	addCollectionSearchCriteria(terms, criteria);

	ScrollableResults scroll = criteria.scroll();
	int i = scroll.last() ? scroll.getRowNumber() + 1 : 0;
	return Long.valueOf(i);
}
 
源代码4 项目: AIDR   文件: CollectionRepositoryImpl.java
private void addCollectionSearchCriteria(String terms, Criteria criteria) {
	if (StringUtils.hasText(terms)){
		String wildcard ='%'+ URLDecoder.decode(terms.trim())+'%';

		LogicalExpression orNameCode = Restrictions.or(
				Restrictions.ilike("name", wildcard),
				Restrictions.ilike("code", wildcard)
				);

		LogicalExpression orAll = Restrictions.or(
				orNameCode,
				Restrictions.ilike("track", wildcard)
				);

		criteria.add(orAll);
	}
}
 
源代码5 项目: ctsms   文件: CategoryCriterion.java
public static Criterion getCategoryCriterionRestriction(CategoryCriterion categoryCriterion) {
	Criterion restriction = null;
	if (categoryCriterion.prefix != null && categoryCriterion.prefix.length() > 0) {
		if (categoryCriterion.caseSensitive) {
			restriction = Restrictions.like(categoryCriterion.field, categoryCriterion.prefix, categoryCriterion.matchMode);
		} else {
			restriction = Restrictions.ilike(categoryCriterion.field, categoryCriterion.prefix, categoryCriterion.matchMode);
		}
	} else if (EmptyPrefixModes.NON_EMPTY_ROWS.equals(categoryCriterion.emptyPrefixMode)) {
		restriction = Restrictions.not(Restrictions.or(Restrictions.eq(categoryCriterion.field, ""), Restrictions.isNull(categoryCriterion.field)));
	} else if (EmptyPrefixModes.EMPTY_ROWS.equals(categoryCriterion.emptyPrefixMode)) {
		restriction = Restrictions.or(Restrictions.eq(categoryCriterion.field, ""), Restrictions.isNull(categoryCriterion.field));
	}
	return restriction;
}
 
源代码6 项目: DataHubSystem   文件: SQLVisitor.java
private Criterion getCriterionLogical(BinaryOperator operator,
      Criterion left, Criterion right)
{
   Criterion criterion;
   if (left == null && right == null)
   {
      criterion = null;
   }
   else if (left != null && right != null)
   {
      switch (operator)
      {
         case AND:
         {
            criterion = Restrictions.and(left, right);
            break;
         }
         case OR:
         {
            criterion = Restrictions.or(left, right);
            break;
         }
         default:
         {
            throw new UnsupportedOperationException(
                  "Unsupported operator: " + operator.toUriLiteral());
         }
      }
   }
   else if (left == null)
   {
      criterion = right;
   }
   else
   {
      criterion = left;
   }
   return criterion;
}
 
源代码7 项目: AIDR   文件: CollectionRepositoryImpl.java
@Override
public Collection getRunningCollectionStatusByUser(Long userId) {
	Criteria criteria = getHibernateTemplate().getSessionFactory().getCurrentSession().createCriteria(Collection.class);
	//criteria.add(Restrictions.eq("user.id", userId));
	//criteria.add(Restrictions.eq("status", CollectionStatus.RUNNING));
	
	LogicalExpression or = Restrictions.or(
			Restrictions.eq("status", CollectionStatus.RUNNING),
			Restrictions.eq("status", CollectionStatus.RUNNING_WARNING)				
			);
	
	LogicalExpression orAll = Restrictions.or(
			or,
			Restrictions.eq("status", CollectionStatus.WARNING)
			);
	
	/*Is this check needed?
	 * 
	 * LogicalExpression and = Restrictions.and(
			orAll,
			Restrictions.ne("status", CollectionStatus.TRASHED)				
			);*/
	LogicalExpression andAll = Restrictions.and(
			orAll,
			Restrictions.eq("owner.id", userId)
			);
	
	criteria.add(andAll);
	//criteria.add(Restrictions.ne("status", CollectionStatus.TRASHED));
	return (Collection) criteria.uniqueResult();
}
 
源代码8 项目: AIDR   文件: CollectionRepositoryImpl.java
@Override
public Long getRunningCollectionsCount(String terms) {
	Criteria criteria = getHibernateTemplate().getSessionFactory().getCurrentSession().createCriteria(Collection.class);
	criteria.setProjection(Projections.projectionList()
			.add(Projections.property("id"), "id"));

	LogicalExpression or = Restrictions.or(
			Restrictions.eq("status", CollectionStatus.RUNNING),
			Restrictions.eq("status", CollectionStatus.RUNNING_WARNING)
			);

	LogicalExpression or2 = Restrictions.or(
			or,
			Restrictions.eq("status", CollectionStatus.INITIALIZING)
			);
	
	LogicalExpression orAll = Restrictions.or(
			or2,
			Restrictions.eq("status", CollectionStatus.WARNING)
			);

	LogicalExpression andAll = Restrictions.and(
			orAll,
			Restrictions.ne("status", CollectionStatus.TRASHED)
			);

	criteria.add(andAll);
	addCollectionSearchCriteria(terms, criteria);

	ScrollableResults scroll = criteria.scroll();
	int i = scroll.last() ? scroll.getRowNumber() + 1 : 0;
	return Long.valueOf(i);
}
 
源代码9 项目: AIDR   文件: CollectionRepositoryImpl.java
@SuppressWarnings("unchecked")
@Override
public List<Collection> getRunningCollections(Integer start, Integer limit, String terms, String sortColumn, String sortDirection) {
	Criteria criteriaIds = getHibernateTemplate().getSessionFactory().getCurrentSession().createCriteria(Collection.class);
	criteriaIds.setProjection(Projections.projectionList()
			.add(Projections.property("id"), "id"));

	LogicalExpression or = Restrictions.or(
			Restrictions.eq("status", CollectionStatus.RUNNING),
			Restrictions.eq("status", CollectionStatus.RUNNING_WARNING)
			);

	LogicalExpression or2 = Restrictions.or(
			or,
			Restrictions.eq("status", CollectionStatus.INITIALIZING)
			);
	
	LogicalExpression orAll = Restrictions.or(
			or2,
			Restrictions.eq("status", CollectionStatus.WARNING)
			);
	
	LogicalExpression andAll = Restrictions.and(
			orAll,
			Restrictions.ne("status", CollectionStatus.TRASHED)
			);

	criteriaIds.add(andAll);
	addCollectionSearchCriteria(terms, criteriaIds);
	searchCollectionsAddOrder(sortColumn, sortDirection, criteriaIds);

	if (start != null) {
		criteriaIds.setFirstResult(start);
	}
	if (limit != null) {
		criteriaIds.setMaxResults(limit);
	}

	List<Integer> ids = criteriaIds.list();

	if (ids.size() == 0){
		return Collections.emptyList();
	}

	Criteria criteria = getHibernateTemplate().getSessionFactory().getCurrentSession().createCriteria(Collection.class);
	criteria.setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY);

	criteria.add(Restrictions.in("id", ids));
	searchCollectionsAddOrder(sortColumn, sortDirection, criteria);

	return criteria.list();
}
 
源代码10 项目: AIDR   文件: CollectionRepositoryImpl.java
@SuppressWarnings("unchecked")
@Override
public List<Collection> getStoppedCollections(Integer start, Integer limit, String terms, String sortColumn, String sortDirection) {
	Criteria criteriaIds = getHibernateTemplate().getSessionFactory().getCurrentSession().createCriteria(Collection.class);
	criteriaIds.setProjection(Projections.projectionList()
			.add(Projections.property("id"), "id"));

	LogicalExpression or = Restrictions.or(
			Restrictions.eq("status", CollectionStatus.STOPPED),
			Restrictions.eq("status", CollectionStatus.NOT_RUNNING)
			);
	
	LogicalExpression orAll = Restrictions.or(
			or,
			Restrictions.eq("status", CollectionStatus.FATAL_ERROR)
			);
	
	criteriaIds.add(orAll);
	addCollectionSearchCriteria(terms, criteriaIds);
	searchCollectionsAddOrder(sortColumn, sortDirection, criteriaIds);

	if (start != null) {
		criteriaIds.setFirstResult(start);
	}
	if (limit != null) {
		criteriaIds.setMaxResults(limit);
	}

	List<Integer> ids = criteriaIds.list();

	if (ids.size() == 0){
		return Collections.emptyList();
	}

	Criteria criteria = getHibernateTemplate().getSessionFactory().getCurrentSession().createCriteria(Collection.class);
	criteria.setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY);

	criteria.add(Restrictions.in("id", ids));
	searchCollectionsAddOrder(sortColumn, sortDirection, criteria);

	return criteria.list();
}
 
源代码11 项目: jeewx   文件: CriteriaQuery.java
/**
 * 设置组合后的Criterion OR关系
 * 
 * @param query
 * @param source
 * @param dest
 * @return
 */
public Criterion getor(Criterion c1,Criterion c2) {
	return Restrictions.or(c1, c2);
}
 
源代码12 项目: jeewx   文件: CriteriaQuery.java
/**
 * 设置Or查询
 * 
 * @param query
 * @param source条件1
 * @param dest条件2
 * @return
 */
public Criterion or(CriteriaQuery query, int source, int dest) {
	return Restrictions.or(query.getCriterionList().getParas(source), query
			.getCriterionList().getParas(dest));
}
 
源代码13 项目: jeewx   文件: CriteriaQuery.java
/**
 * 设置or(Criterion c, CriteriaQuery query, int source)(或)查询条件
 * 
 * @param keyname
 * @param keyvalue1
 * @param keyvalue2
 */
public Criterion or(Criterion c, CriteriaQuery query, int source) {
	return Restrictions.or(c, query.getCriterionList().getParas(source));
}
 
源代码14 项目: jeecg   文件: CriteriaQuery.java
/**
 * 设置组合后的Criterion OR关系
 * 
 * @param query
 * @param source
 * @param dest
 * @return
 */
public Criterion getor(Criterion c1,Criterion c2) {
	return Restrictions.or(c1, c2);
}
 
源代码15 项目: jeecg   文件: CriteriaQuery.java
/**
 * 设置Or查询
 * 
 * @param query
 * @param source条件1
 * @param dest条件2
 * @return
 */
public Criterion or(CriteriaQuery query, int source, int dest) {
	return Restrictions.or(query.getCriterionList().getParas(source), query
			.getCriterionList().getParas(dest));
}
 
源代码16 项目: jeecg   文件: CriteriaQuery.java
/**
 * 设置or(Criterion c, CriteriaQuery query, int source)(或)查询条件
 * 
 * @param keyname
 * @param keyvalue1
 * @param keyvalue2
 */
public Criterion or(Criterion c, CriteriaQuery query, int source) {
	return Restrictions.or(c, query.getCriterionList().getParas(source));
}