List of usage examples for org.hibernate.criterion Restrictions ilike
public static Criterion ilike(String propertyName, Object value)
From source file:com.creativity.repository.Fichas.java
public List<Ficha> filtrados(FichaFilter filtro) { String nome = null;/* w ww . j av a 2 s. c o m*/ UsuarioSistema usuarioLogado = getUsuarioLogado(); if (usuarioLogado != null) { nome = usuarioLogado.getUsuario().getNome(); } Session session = this.manager.unwrap(Session.class); Criteria criteria = session.createCriteria(Ficha.class) // fazemos uma associao (join) com cliente e nomeamos como "c" // fazemos uma associao (join) com vendedor e nomeamos como "v" .createAlias("gestor", "v"); if (filtro.getNumeroDe() != null) { // id deve ser maior ou igual (ge = greater or equals) a filtro.numeroDe criteria.add(Restrictions.ge("id", filtro.getNumeroDe())); } if (filtro.getNumeroAte() != null) { // id deve ser menor ou igual (le = lower or equal) a filtro.numeroDe criteria.add(Restrictions.le("id", filtro.getNumeroAte())); } if (filtro.getDataCriacaoDe() != null) { criteria.add(Restrictions.ge("dataCriacao", filtro.getDataCriacaoDe())); } if (filtro.getDataCriacaoAte() != null) { criteria.add(Restrictions.le("dataCriacao", filtro.getDataCriacaoAte())); } if (filtro.getDataAprovacaoDe() != null) { criteria.add(Restrictions.ge("dataAprovacao", filtro.getDataAprovacaoDe())); } if (filtro.getDataAprovacaoAte() != null) { criteria.add(Restrictions.le("dataAprovacao", filtro.getDataAprovacaoAte())); } if (StringUtils.isNotBlank(filtro.getCpf())) { criteria.add(Restrictions.ilike("cpf", filtro.getCpf())); } if (StringUtils.isNotBlank(filtro.getCnpj())) { criteria.add(Restrictions.ilike("cnpj", filtro.getCnpj())); } if (StringUtils.isNotBlank(nome)) { // acessamos o nome do vendedor associado ao pedido pelo alias "v", criado anteriormente criteria.add(Restrictions.ilike("v.nome", nome, MatchMode.ANYWHERE)); } if (StringUtils.isNotBlank(filtro.getNomeCliente())) { criteria.add(Restrictions.ilike("nomeRazao", filtro.getNomeCliente(), MatchMode.ANYWHERE)); } /* if (StringUtils.isNotBlank(filtro.getNomeVendedor())) { // acessamos o nome do vendedor associado ao pedido pelo alias "v", criado anteriormente criteria.add(Restrictions.ilike("v.nome", filtro.getNomeVendedor(), MatchMode.ANYWHERE)); }*/ if (filtro.getStatuses() != null && filtro.getStatuses().length > 0) { // adicionamos uma restrio "in", passando um array de constantes da enum StatusPedido criteria.add(Restrictions.in("statusFicha", filtro.getStatuses())); } return criteria.addOrder(Order.asc("id")).list(); }
From source file:com.daro.persistence.generic.dao.GenericDaoImpl.java
License:GNU General Public License
/** * Search a entity list of T (clazz type) using a map with criteria. * The parameter map is a collection of pairs (field name and value). * //from ww w . j a va 2s . c om * @param parameterMap * @return List<T> * @throws PersistenceException */ @SuppressWarnings("unchecked") @Override public List<T> search(Map<String, Object> parameterMap) throws PersistenceException { //logger.debug(clazz.getSimpleName() + " ######### SEARCH ##################" ); List<T> lst = null; //try{ Session session = this.getCurrentSession(); if (this.sessionFactory.isClosed()) { logger.debug("Session Factory is Closed!"); } //org.hibernate.HibernateException: No Session found for current thread //session.getTransaction().begin(); Criteria criteria = session.createCriteria(clazz); Set<String> fieldName = parameterMap.keySet(); for (String field : fieldName) { criteria.add(Restrictions.ilike(field, parameterMap.get(field))); } lst = (List<T>) criteria.list(); if (loggerInfoEnabled && !(lst.isEmpty())) { logger.debug("Persistence layer info: " + clazz.getSimpleName() + " search successfully, list size=" + lst.size()); for (T elem : lst) { logger.debug("Persistence layer info: " + clazz.getSimpleName() + " List::" + elem); } } //session.getTransaction().commit(); /*} catch (Exception e) { //throw new BookStoreDAORuntimeException(e.getMessage(), e); logger.error(e.getStackTrace()); }*/ return lst; }
From source file:com.ephesoft.dcma.core.dao.hibernate.HibernateDao.java
License:Open Source License
private void updateFilterCriteria(EphesoftCriteria criteria, DataFilter<? extends DomainProperty>... dataFilters) { if (dataFilters == null) { return;//from w ww .j a va 2 s . com } for (DataFilter<? extends DomainProperty> dataFilter : dataFilters) { String property = dataFilter.getNameProperty().getProperty(); String alias = criteria.getAlias(property, true); if (alias == null) { criteria.createAlias(property, true); alias = criteria.getAlias(property, true); } if (dataFilter.isLike()) { criteria.add(Restrictions.ilike(alias, dataFilter.getValueProperty())); } else { criteria.add(Restrictions.eq(alias, dataFilter.getValueProperty())); } } }
From source file:com.eucalyptus.autoscaling.common.internal.groups.PersistenceAutoScalingGroups.java
License:Open Source License
@Override public <T> List<T> listRequiringMonitoring(final Set<MonitoringSelector> selectors, final Function<? super AutoScalingGroup, T> transform) throws AutoScalingMetadataException { final Collection<String> suffixes = selectors.stream() .flatMap(FUtils.chain(MonitoringSelector::suffixes, Collection::stream)) .collect(Collectors.toSet()); final Junction likeAnyOf = Restrictions.disjunction(); for (final String suffix : suffixes) { likeAnyOf.add(Restrictions.ilike("id", "%" + suffix)); }/*w w w . ja v a2s .com*/ return persistenceSupport.listByExample(AutoScalingGroup.withOwner(null), Predicates.alwaysTrue(), likeAnyOf, Collections.<String, String>emptyMap(), transform); }
From source file:com.eucalyptus.autoscaling.groups.PersistenceAutoScalingGroups.java
License:Open Source License
@Override public <T> List<T> listRequiringMonitoring(final long interval, final Function<? super AutoScalingGroup, T> transform) throws AutoScalingMetadataException { // We want to select some groups depending on the interval / time int group = (int) ((System.currentTimeMillis() / interval) % 6); final Collection<String> suffixes = Lists.newArrayList(); switch (group) { case 0://from w w w .j a v a 2s .c o m suffixes.add("0"); suffixes.add("1"); suffixes.add("2"); break; case 1: suffixes.add("3"); suffixes.add("4"); suffixes.add("5"); break; case 2: suffixes.add("6"); suffixes.add("7"); suffixes.add("8"); break; case 3: suffixes.add("9"); suffixes.add("a"); suffixes.add("b"); break; case 4: suffixes.add("c"); suffixes.add("d"); break; default: suffixes.add("e"); suffixes.add("f"); break; } final Junction likeAnyOf = Restrictions.disjunction(); for (final String suffix : suffixes) { likeAnyOf.add(Restrictions.ilike("id", "%" + suffix)); } return persistenceSupport.listByExample(AutoScalingGroup.withOwner(null), Predicates.alwaysTrue(), likeAnyOf, Collections.<String, String>emptyMap(), transform); }
From source file:com.examples.hql.CriteriaQueriesExamples.java
public static void main(String[] args) { SessionFactory sf = HibernateUtil.getSessionFactory(); Session session = sf.openSession();/*from ww w . ja va2 s.c om*/ try { Criteria cr = session.createCriteria(PurchaseOrderHeader.class); Criterion c = Restrictions.ilike("ponumber", "PO%"); cr.addOrder(Order.asc("orderValue")); cr.add(c); List<PurchaseOrderHeader> listPOH = cr.list(); for (PurchaseOrderHeader poh : listPOH) { System.out.println(poh.getPoheaderId() + " | " + poh.getPonumber() + " | " + poh.getPodate() + " | " + poh.getOrderValue()); } System.out.println("----------***********-------------"); session.close(); sf.close(); } catch (Exception ex) { ex.printStackTrace(); } }
From source file:com.gisgraphy.domain.repository.OpenStreetMapDao.java
License:Open Source License
@SuppressWarnings("unchecked") public List<StreetDistance> getNearestAndDistanceFrom(final Point point, final double distance, final int firstResult, final int maxResults, final StreetType streetType, final Boolean oneWay, final String name, final StreetSearchMode streetSearchMode, final boolean includeDistanceField) { if (streetSearchMode == StreetSearchMode.FULLTEXT && !GisgraphyConfig.STREET_SEARCH_FULLTEXT_MODE) { throw new GisgraphyException( "The fulltext mode has been removed in gisgraphy v 3.0 and has been replaced by fulltext webservice with placetype=street. please Consult user guide."); }/*from w w w . j a va 2 s. c o m*/ if (name != null && streetSearchMode == null) { throw new IllegalArgumentException("streetSearchmode can not be null if name is provided"); } if (point == null && streetSearchMode == StreetSearchMode.CONTAINS) { throw new IllegalArgumentException( "you must specify lat/lng when streetsearchmode = " + StreetSearchMode.CONTAINS); } return (List<StreetDistance>) this.getHibernateTemplate().execute(new HibernateCallback() { public Object doInHibernate(Session session) throws PersistenceException { Criteria criteria = session.createCriteria(OpenStreetMap.class); List<String> fieldList = IntrospectionHelper.getFieldsAsList(OpenStreetMap.class); ProjectionList projections = ProjectionBean.fieldList(fieldList, false); if (includeDistanceField && point != null) { projections.add( // SpatialProjection.distance_sphere(point, GisFeature.LOCATION_COLUMN_NAME).as( // "distance")); SpatialProjection.distance_pointToLine(point, OpenStreetMap.SHAPE_COLUMN_NAME) .as("distance")); } criteria.setProjection(projections); if (includeDistanceField && point != null) { criteria.addOrder(new ProjectionOrder("distance")); } if (maxResults > 0) { criteria = criteria.setMaxResults(maxResults); } if (firstResult >= 1) { criteria = criteria.setFirstResult(firstResult - 1); } if (point != null) { Polygon polygonBox = GeolocHelper.createPolygonBox(point.getX(), point.getY(), distance); criteria = criteria.add(new IntersectsRestriction(OpenStreetMap.SHAPE_COLUMN_NAME, polygonBox)); } if (name != null) { if (streetSearchMode == StreetSearchMode.CONTAINS) { criteria = criteria.add(Restrictions.isNotNull("name"));//optimisation! criteria = criteria.add( Restrictions.ilike(OpenStreetMap.FULLTEXTSEARCH_PROPERTY_NAME, "%" + name + "%")); //criteria = criteria.add(new PartialWordSearchRestriction(OpenStreetMap.PARTIALSEARCH_VECTOR_COLUMN_NAME, name)); } else if (streetSearchMode == StreetSearchMode.FULLTEXT) { criteria = criteria.add( new FulltextRestriction(OpenStreetMap.FULLTEXTSEARCH_VECTOR_PROPERTY_NAME, name)); } else { throw new NotImplementedException( streetSearchMode + " is not implemented for street search"); } } if (streetType != null) { criteria = criteria.add(Restrictions.eq("streetType", streetType)); } if (oneWay != null) { criteria = criteria.add(Restrictions.eq("oneWay", oneWay)); } criteria.setCacheable(true); // List<Object[]> queryResults =testCriteria.list(); List<?> queryResults = criteria.list(); if (queryResults != null && queryResults.size() != 0) { String[] propertiesNameArray; if (includeDistanceField && point != null) { propertiesNameArray = (String[]) ArrayUtils .add(IntrospectionHelper.getFieldsAsArray(OpenStreetMap.class), "distance"); } else { propertiesNameArray = IntrospectionHelper.getFieldsAsArray(OpenStreetMap.class); } List<StreetDistance> results = ResultTransformerUtil .transformToStreetDistance(propertiesNameArray, queryResults); return results; } else { return new ArrayList<StreetDistance>(); } } }); }
From source file:com.globalsight.everest.usermgr.UserManagerLocal.java
License:Apache License
/** * Get users matched the specified criteria * /* ww w. j ava2 s. c o m*/ * @param p_userAttrs * - Arrtibute array contains the User entry attributes * @param p_roleAttrs * - Attribute array contains the Role entry attributes * @param p_project * @return a Vector of User objects * @exception UserManagerException * - Component related exception. * @exception java.rmi.RemoteException * - Network related exception. */ public Vector getUsers(UserSearchParams p_searchParams, Project p_project) throws RemoteException, UserManagerException { Session session = HibernateUtil.getSession(); boolean filterUser = false; Vector<UserImpl> us = new Vector<UserImpl>(); Criteria c = session.createCriteria(UserImpl.class); String userId = p_searchParams.getIdName(); if (userId != null && userId.length() > 0) { filterUser = true; c.add(Restrictions.or(Restrictions.ilike("userId", "%" + userId + "%"), Restrictions.ilike("userName", "%" + userId + "%"))); } String firstName = p_searchParams.getFirstName(); if (firstName != null && firstName.length() > 0) { filterUser = true; c.add(Restrictions.eq("firstName", firstName)); } String lastName = p_searchParams.getLastName(); if (lastName != null && lastName.length() > 0) { filterUser = true; c.add(Restrictions.eq("lastName", lastName)); } String email = p_searchParams.getEmail(); if (email != null && email.length() > 0) { filterUser = true; c.add(Restrictions.eq("email", email)); } if (filterUser) { us.addAll(c.list()); } boolean filterRole = false; Criteria cc = session.createCriteria(ContainerRoleImpl.class); Criteria uc = session.createCriteria(UserRoleImpl.class); String sourceLocale = p_searchParams.getSourceLocaleParam(); if (sourceLocale != null && sourceLocale.length() > 0) { filterRole = true; cc.add(Restrictions.eq("sourceLocale", sourceLocale)); uc.add(Restrictions.eq("sourceLocale", sourceLocale)); } String targetLocale = p_searchParams.getTargetLocaleParam(); if (targetLocale != null && targetLocale.length() > 0) { filterRole = true; cc.add(Restrictions.eq("targetLocale", targetLocale)); uc.add(Restrictions.eq("targetLocale", targetLocale)); } if (filterRole) { List uids = new ArrayList(); cc.add(Restrictions.eq("state", User.State.ACTIVE)); uc.add(Restrictions.eq("state", User.State.ACTIVE)); List<ContainerRoleImpl> crs = cc.list(); List<UserRoleImpl> urs = uc.list(); for (ContainerRoleImpl cr : crs) { uids.addAll(cr.getUserIds()); } for (UserRoleImpl ur : urs) { uids.add(ur.getUser()); } if (uids.size() > 0) { c = session.createCriteria(UserImpl.class); c.add(Restrictions.in("userId", uids)); us.addAll(c.list()); } } return us; // return getUsers(p_userAttrs, p_roleAttrs, null, p_project); }
From source file:com.googlecode.ouvidoria.model.complaint.ComplaintDaoImpl.java
@Override @SuppressWarnings("unchecked") public List<?> searchByCriteria(final int transform, final String queryString, int pageNumber, int pageSize, final ComplaintVO vo) { Criteria criteria = this.getSession().createCriteria(Complaint.class); if (vo != null) { if (vo.getId() != null) { criteria.add(Restrictions.idEq(vo.getId())); } else {//from w ww. ja va 2 s .c om if (vo.getStatus() != null) { System.out.println("DAO .... " + vo.getStatus()); criteria.add(Restrictions.eq("status", vo.getStatus())); } //TODO demandant if (vo.getSubjectId() != null) { criteria.createCriteria("subject").add(Restrictions.idEq(vo.getSubjectId())); } if (vo.getText() != null) { criteria.add(Restrictions.ilike("text", "%" + vo.getText() + "%")); } if (vo.getTypeId() != null) { criteria.createCriteria("type").add(Restrictions.idEq(vo.getTypeId())); } } } criteria.addOrder(Order.desc("date")); if (pageNumber > 0 && pageSize > 0) { criteria.setFirstResult(super.calculateFirstResult(pageNumber, pageSize)); criteria.setMaxResults(pageSize); } List results = criteria.list(); transformEntities(transform, results); return results; }
From source file:com.hmsinc.epicenter.model.geography.impl.GeographyRepositoryImpl.java
License:Open Source License
@SuppressWarnings("unchecked") public <T extends Geography> List<T> getGeographiesInState(State state, String query, Class<T> geographyType, boolean includePartial) { final String name = (includePartial ? query + "%" : query); return criteriaQuery(entityManager, geographyType).add(Restrictions.eq("state", state)) .add(Restrictions.ilike("name", name)).addOrder(Order.asc("name")).list(); }