當前位置: 首頁>>代碼示例>>Java>>正文


Java DetachedCriteria類代碼示例

本文整理匯總了Java中org.hibernate.criterion.DetachedCriteria的典型用法代碼示例。如果您正苦於以下問題:Java DetachedCriteria類的具體用法?Java DetachedCriteria怎麽用?Java DetachedCriteria使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


DetachedCriteria類屬於org.hibernate.criterion包,在下文中一共展示了DetachedCriteria類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: prepareItemQuery

import org.hibernate.criterion.DetachedCriteria; //導入依賴的package包/類
@Override
public void prepareItemQuery(ItemSerializerState state)
{
	final DetachedCriteria criteria = state.getItemQuery();
	final ProjectionList projection = state.getItemProjection();

	if( state.hasCategory(ItemSerializerService.CATEGORY_BASIC) )
	{
		projection.add(Projections.property("name.id"), NAME_ALIAS);
		projection.add(Projections.property("description.id"), DESC_ALIAS);
	}

	if( state.hasCategory(ItemSerializerService.CATEGORY_METADATA) )
	{
		criteria.createAlias("itemXml", "itemXml");
		projection.add(Projections.property("itemXml.xml"), METADATA_ALIAS);
	}
}
 
開發者ID:equella,項目名稱:Equella,代碼行數:19,代碼來源:BasicItemSerializerProvider.java

示例2: listCriteria

import org.hibernate.criterion.DetachedCriteria; //導入依賴的package包/類
@SuppressWarnings ("unchecked")
public List<T> listCriteria (DetachedCriteria detached, int skip, int top)
{
   SessionFactory factory = getSessionFactory ();
   org.hibernate.classic.Session session = factory.getCurrentSession ();

   Criteria criteria = detached.getExecutableCriteria (session);

   if (skip > 0)
      criteria.setFirstResult (skip);
   if (top > 0)
      criteria.setMaxResults (top);
   return criteria.list ();
}
 
開發者ID:SentinelDataHub,項目名稱:dhus-core,代碼行數:15,代碼來源:HibernateDao.java

示例3: findByCriteria

import org.hibernate.criterion.DetachedCriteria; //導入依賴的package包/類
@Override
public List<?> findByCriteria(final DetachedCriteria criteria, final int firstResult, final int maxResults)
		throws DataAccessException {

	Assert.notNull(criteria, "DetachedCriteria must not be null");
	return executeWithNativeSession(new HibernateCallback<List<?>>() {
		@Override
		@SuppressWarnings("unchecked")
		public List<?> doInHibernate(Session session) throws HibernateException {
			Criteria executableCriteria = criteria.getExecutableCriteria(session);
			prepareCriteria(executableCriteria);
			if (firstResult >= 0) {
				executableCriteria.setFirstResult(firstResult);
			}
			if (maxResults > 0) {
				executableCriteria.setMaxResults(maxResults);
			}
			return executableCriteria.list();
		}
	});
}
 
開發者ID:lamsfoundation,項目名稱:lams,代碼行數:22,代碼來源:HibernateTemplate.java

示例4: execute

import org.hibernate.criterion.DetachedCriteria; //導入依賴的package包/類
private Object execute(FlowFinderCriteria flowFinderCriteria,
        DetachedCriteria flowStatusCriteria, Session session,
        boolean idProjection) {

    Criteria criteria = flowStatusCriteria.getExecutableCriteria(session);

    if (idProjection) {
        criteria.setProjection(Projections.id());
    }
    
    int maxResults = flowFinderCriteria.getMaxResults();
    if (maxResults != FlowFinderCriteria.DEFAULT_MAX_RESULTS) {
        criteria.setMaxResults(maxResults);
    }

    if (flowFinderCriteria.hasMessageQuery()) {
        FlowSearchCriteria flowSearchCriteria = new FlowSearchCriteria();
        flowSearchCriteria.setHibernateCriteria(criteria);
        flowSearchCriteria.setInboundMessageQuery(flowFinderCriteria.getInboundMessageQuery());
        flowSearchCriteria.setOutboundMessageQuery(flowFinderCriteria.getOutboundMessageQuery());
        return flowSearchCallback.findFlows(session, flowSearchCriteria);
    } else {
        return criteria.list();
    }
}
 
開發者ID:oehf,項目名稱:ipf-flow-manager,代碼行數:26,代碼來源:FlowRepositoryImpl.java

示例5: createFlowsCriteria

import org.hibernate.criterion.DetachedCriteria; //導入依賴的package包/類
private static DetachedCriteria createFlowsCriteria(FlowFinderCriteria finderCriteria) {
    DetachedCriteria criteria = DetachedCriteria.forClass(Flow.class)
            .setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY)
            .setFetchMode("parts", FetchMode.JOIN) // eager
            .add(ge("creationTime", finderCriteria.getFrom()))
            .addOrder(Order.desc("identifier"));

    if (finderCriteria.getApplication() != null) {
        // constrain query to a certain application name
        criteria.add(eq("application", finderCriteria
                .getApplication()));
    }
    if (finderCriteria.getTo() != null) {
        // there's an upper limit to creationTime property
        criteria.add(Restrictions
                .le("creationTime", finderCriteria.getTo()));
    }

    return criteria;
}
 
開發者ID:oehf,項目名稱:ipf-flow-manager,代碼行數:21,代碼來源:FlowRepositoryImpl.java

示例6: createPurgeCriteria

import org.hibernate.criterion.DetachedCriteria; //導入依賴的package包/類
private static DetachedCriteria createPurgeCriteria(FlowPurgeCriteria purgeCriteria) {
    DetachedCriteria criteria = DetachedCriteria.forClass(Flow.class)
        .setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY)
        // purge all flows with a creation time older than time limit
        .add(lt("creationTime", purgeCriteria.getTimeLimit()))
        // purge oldest flows first
        .addOrder(Order.asc("creationTime"));

    if (purgeCriteria.getApplication() != null) {
        criteria.add(eq("application", purgeCriteria.getApplication()));
    }
    
    if (purgeCriteria.getPurgeMode() == PurgeMode.CLEAN) {
        // omit flows with error status
        criteria.add(
            or(
                eq("derivedStatus", FlowStatus.CLEAN),
                isNull("derivedStatus") // old flows (both CLEAN and ERROR)
            ) 
        );
        
    }
    return criteria;
}
 
開發者ID:oehf,項目名稱:ipf-flow-manager,代碼行數:25,代碼來源:FlowRepositoryImpl.java

示例7: getLast

import org.hibernate.criterion.DetachedCriteria; //導入依賴的package包/類
@Override
public QuotePE getLast(String sigle) {
	Session session = getSession();

	DetachedCriteria  maxDate = DetachedCriteria.forClass(QuotePE.class);
	maxDate.add(Restrictions.eq("symbol", sigle));
	maxDate.setProjection(Projections.max("creationDateTime"));
	
   	Criteria criteria = session.createCriteria(QuotePE.class);
   	criteria.add(Restrictions.eq("symbol", sigle));
   	criteria.add(Property.forName("creationDateTime").eq(maxDate));
   	
	QuotePE pe = (QuotePE) criteria.uniqueResult();
	session.close();
	
	return pe;
}
 
開發者ID:auTasso,項目名稱:SandBoxNGSB,代碼行數:18,代碼來源:QuoteDAOImpl.java

示例8: process

import org.hibernate.criterion.DetachedCriteria; //導入依賴的package包/類
@Override
public RpcGetAuthorizCustomer process(CmdParams cmdParams, String ipAdress, byte[] IP) {
    QLog.l().logQUser().debug("getClientAuthorization");
    super.process(cmdParams, ipAdress, IP);
    // Вытащим из базы предварительного кастомера
    if (cmdParams.clientAuthId == null || cmdParams.clientAuthId.isEmpty()) {
        return new RpcGetAuthorizCustomer(null);
    }
    final List<QAuthorizationCustomer> authCusts = Spring.getInstance().getHt()
        .findByCriteria(
            DetachedCriteria.forClass(QAuthorizationCustomer.class)
                .add(Restrictions.eq("authId", cmdParams.clientAuthId).ignoreCase()));
    final QAuthorizationCustomer authCust;
    if (authCusts.isEmpty() || authCusts.get(0) == null || authCusts.get(0).getId() == null
        || authCusts.get(0).getName() == null) {
        QLog.l().logger()
            .trace("Не найден клиент по его ID = '" + cmdParams.clientAuthId + "'");
        authCust = null;
    } else {
        authCust = authCusts.get(0);
    }
    return new RpcGetAuthorizCustomer(authCust);
}
 
開發者ID:bcgov,項目名稱:sbc-qsystem,代碼行數:24,代碼來源:Executer.java

示例9: deleteComponentProfileByControlId

import org.hibernate.criterion.DetachedCriteria; //導入依賴的package包/類
@SuppressWarnings("unchecked")
public void deleteComponentProfileByControlId(String controlId, String name) {
	DetachedCriteria detachedCriteria = DetachedCriteria.forClass(ComponentConfig.class);
	detachedCriteria.add(Restrictions.eq("controlId", controlId));
	detachedCriteria.add(Restrictions.eq("name", name));
	Session session = this.getSessionFactory().openSession();
	try {
		org.hibernate.Criteria criteria = detachedCriteria.getExecutableCriteria(session);
		List<ComponentConfig> list = criteria.list();
		if (list.size() > 0) {
			String hql = "delete " + ComponentConfigMember.class.getName()
					+ " m where m.componentConfig.id = :configId";
			session.createQuery(hql).setString("configId", list.get(0).getId()).executeUpdate();
			session.delete(list.get(0));
		}
	} finally {
		session.flush();
		session.close();
	}
}
 
開發者ID:bsteker,項目名稱:bdf2,代碼行數:21,代碼來源:HibernateComponentConfigManager.java

示例10: loadMessageTemplates

import org.hibernate.criterion.DetachedCriteria; //導入依賴的package包/類
public void loadMessageTemplates(Page<MessageTemplate> page,Criteria criteria,String type){
	IUser user=ContextHolder.getLoginUser();
	if(user==null){
		throw new RuntimeException("Please login first!");
	}
	String companyId=user.getCompanyId();
	if(StringUtils.isNotEmpty(getFixedCompanyId())){
		companyId=getFixedCompanyId();
	}
	DetachedCriteria dc=this.buildDetachedCriteria(criteria, MessageTemplate.class);
	if(StringUtils.isNotEmpty(type)){
		dc.add(Property.forName("type").eq(type));
	}
	Property p=Property.forName("companyId");
	dc.add(p.eq(companyId));
	this.pagingQuery(page, dc);
}
 
開發者ID:bsteker,項目名稱:bdf2,代碼行數:18,代碼來源:MessageTemplateServiceImpl.java

示例11: createEcrfFieldValueDetachedCriteria

import org.hibernate.criterion.DetachedCriteria; //導入依賴的package包/類
private static DetachedCriteria createEcrfFieldValueDetachedCriteria(org.hibernate.Criteria ecrfFieldValueCriteria, org.hibernate.Criteria ecrfFieldCriteria,
		org.hibernate.Criteria probandListEntryCriteria,
		Long probandListEntryId, Long ecrfFieldId) {
	DetachedCriteria subQuery = DetachedCriteria.forClass(ECRFFieldValueImpl.class, "ecrfFieldValue1"); // IMPL!!!!
	// subQuery.setProjection(Projections.max("id"));
	if (probandListEntryId == null) {
		if (probandListEntryCriteria == null) {
			probandListEntryCriteria = ecrfFieldValueCriteria.createCriteria("listEntry", "probandListEntry0");
		}
		subQuery.add(Restrictions.eqProperty("listEntry.id", probandListEntryCriteria.getAlias() + ".id"));
	} else {
		subQuery.add(Restrictions.eq("listEntry.id", probandListEntryId.longValue()));
	}
	if (ecrfFieldId == null) {
		if (ecrfFieldCriteria == null) {
			ecrfFieldCriteria = ecrfFieldValueCriteria.createCriteria("ecrfField", "ecrfField0");
		}
		subQuery.add(Restrictions.eqProperty("ecrfField.id", ecrfFieldCriteria.getAlias() + ".id"));
	} else {
		subQuery.add(Restrictions.eq("ecrfField.id", ecrfFieldId.longValue()));
	}
	return subQuery;
}
 
開發者ID:phoenixctms,項目名稱:ctsms,代碼行數:24,代碼來源:ECRFFieldValueDaoImpl.java

示例12: buildCriterions

import org.hibernate.criterion.DetachedCriteria; //導入依賴的package包/類
private void buildCriterions(Collection<com.bstek.dorado.data.provider.Criterion> criterions, DetachedCriteria dc) {
	for (com.bstek.dorado.data.provider.Criterion c : criterions) {
		if (c instanceof SingleValueFilterCriterion) {
			SingleValueFilterCriterion fc = (SingleValueFilterCriterion) c;
			dc.add(this.buildCriterion(fc));
		}
		if (c instanceof Junction) {
			Junction jun = (Junction) c;
			org.hibernate.criterion.Junction junction = null;
			if (jun instanceof Or) {
				junction = Restrictions.disjunction();
			} else if (jun instanceof And) {
				junction = Restrictions.conjunction();
			}
			Collection<com.bstek.dorado.data.provider.Criterion> subCriterions = jun.getCriterions();
			if (subCriterions != null) {
				buildCriterions(subCriterions, junction);
			}
			dc.add(junction);
		}
	}
}
 
開發者ID:bsteker,項目名稱:bdf2,代碼行數:23,代碼來源:HibernateDao.java

示例13: createEcrfFieldStatusEntryDetachedCriteria

import org.hibernate.criterion.DetachedCriteria; //導入依賴的package包/類
private static DetachedCriteria createEcrfFieldStatusEntryDetachedCriteria(org.hibernate.Criteria ecrfFieldStatusEntryCriteria, org.hibernate.Criteria ecrfFieldCriteria,
		org.hibernate.Criteria probandListEntryCriteria,
		Long probandListEntryId, Long ecrfFieldId) {
	DetachedCriteria subQuery = DetachedCriteria.forClass(ECRFFieldStatusEntryImpl.class, "ecrfFieldStatusEntry1"); // IMPL!!!!
	// subQuery.setProjection(Projections.max("id"));
	if (probandListEntryId == null) {
		if (probandListEntryCriteria == null) {
			probandListEntryCriteria = ecrfFieldStatusEntryCriteria.createCriteria("listEntry", "probandListEntry0");
		}
		subQuery.add(Restrictions.eqProperty("listEntry.id", probandListEntryCriteria.getAlias() + ".id"));
	} else {
		subQuery.add(Restrictions.eq("listEntry.id", probandListEntryId.longValue()));
	}
	if (ecrfFieldId == null) {
		if (ecrfFieldCriteria == null) {
			ecrfFieldCriteria = ecrfFieldStatusEntryCriteria.createCriteria("ecrfField", "ecrfField0");
		}
		subQuery.add(Restrictions.eqProperty("ecrfField.id", ecrfFieldCriteria.getAlias() + ".id"));
	} else {
		subQuery.add(Restrictions.eq("ecrfField.id", ecrfFieldId.longValue()));
	}
	return subQuery;
}
 
開發者ID:phoenixctms,項目名稱:ctsms,代碼行數:24,代碼來源:ECRFFieldStatusEntryDaoImpl.java

示例14: createEcrfFieldStatusEntryDetachedCriteriaMaxId

import org.hibernate.criterion.DetachedCriteria; //導入依賴的package包/類
private static DetachedCriteria createEcrfFieldStatusEntryDetachedCriteriaMaxId(org.hibernate.Criteria ecrfFieldStatusEntryCriteria, org.hibernate.Criteria ecrfFieldCriteria,
		org.hibernate.Criteria probandListEntryCriteria,
		ECRFFieldStatusQueue queue, Long probandListEntryId, Long ecrfFieldId) {
	DetachedCriteria subQuery = createEcrfFieldStatusEntryDetachedCriteria(ecrfFieldStatusEntryCriteria, ecrfFieldCriteria, probandListEntryCriteria, probandListEntryId,
			ecrfFieldId);
	if (queue != null) {
		subQuery.add(Restrictions.eq("queue", queue));
		subQuery.setProjection(Projections.max("id"));
	} else {
		ProjectionList proj = Projections.projectionList();
		proj.add(Projections.sqlGroupProjection(
				"max({alias}.id) as maxId",
				"{alias}.queue",
				new String[] { "maxId" },
				new org.hibernate.type.Type[] { Hibernate.LONG }));
		subQuery.setProjection(proj);
	}

	return subQuery;
}
 
開發者ID:phoenixctms,項目名稱:ctsms,代碼行數:21,代碼來源:ECRFFieldStatusEntryDaoImpl.java

示例15: uniqueResult

import org.hibernate.criterion.DetachedCriteria; //導入依賴的package包/類
@SuppressWarnings ("unchecked")
public T uniqueResult (DetachedCriteria criteria)
{
   Criteria excrit = criteria.getExecutableCriteria(getSessionFactory().getCurrentSession());
   excrit.setMaxResults(1);
   List<?> res = excrit.list();
   return res.isEmpty() ? null : (T) res.get(0);
}
 
開發者ID:SentinelDataHub,項目名稱:dhus-core,代碼行數:9,代碼來源:HibernateDao.java


注:本文中的org.hibernate.criterion.DetachedCriteria類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。