List of usage examples for org.hibernate.criterion Restrictions ilike
public static Criterion ilike(String propertyName, Object value)
From source file:com.medicfast.DAO.MedicamentoDAO.java
public List<Medicamento> buscarPorNome(String txt) { Session session = (Session) em.getDelegate(); Criteria criteria = session.createCriteria(Medicamento.class); criteria.add(Restrictions.ilike("nome", "%" + txt + "%")); return criteria.list(); }
From source file:com.mercatis.lighthouse3.persistence.events.hibernate.EventRegistryImplementation.java
License:Apache License
/** * This method generates criteria for a given event template that also * contain an ordering clause on the date of occurrence. * /*from w w w. j a v a2 s.co m*/ * @param session * the Hibernate session to use for criteria generation * @param entityTemplate * the template for which to generate the criteria * @param descending * <code>true</code> if descending order is wanted (the default) * or <code>false</code> for ascending order. * @return */ public Criteria generateOrderingCriteria(Session session, Event entityTemplate, boolean descending) { Criteria criteria = super.entityToCriteria(session, entityTemplate); if (entityTemplate.getContext() != null) { if (!Ranger.isEnumerationRange(entityTemplate.getContext())) criteria.add(Restrictions.eq("context", entityTemplate.getContext())); else criteria.add(Restrictions.in("context", Ranger.castToEnumerationRange(entityTemplate.getContext()).getEnumeration())); } if (entityTemplate.getCode() != null) { if (!Ranger.isEnumerationRange(entityTemplate.getCode())) criteria.add(Restrictions.eq("code", entityTemplate.getCode())); else criteria.add(Restrictions.in("code", Ranger.castToEnumerationRange(entityTemplate.getCode()).getEnumeration())); } if (entityTemplate.getLevel() != null) { if (!Ranger.isEnumerationRange(entityTemplate.getLevel())) criteria.add(Restrictions.eq("level", entityTemplate.getLevel())); else criteria.add(Restrictions.in("level", Ranger.castToEnumerationRange(entityTemplate.getLevel()).getEnumeration())); } if (entityTemplate.getMachineOfOrigin() != null) criteria.add(Restrictions.eq("machineOfOrigin", entityTemplate.getMachineOfOrigin())); if (entityTemplate.getMessage() != null) { criteria.add(Restrictions.ilike("message", "%" + entityTemplate.getMessage() + "%")); } if (entityTemplate.getStackTrace() != null) { if (this.unitOfWork.getSqlDialect() instanceof org.hibernate.dialect.MySQL5InnoDBDialect) criteria.add(Restrictions.sqlRestriction("match ({alias}.STACK_TRACE) against (?)", entityTemplate.getStackTrace(), StringType.INSTANCE)); else criteria.add(Restrictions.ilike("stackTrace", "%" + entityTemplate.getStackTrace() + "%")); } if (entityTemplate.getDateOfOccurrence() != null) { if (!Ranger.isIntervalRange(entityTemplate.getDateOfOccurrence())) { criteria.add(Restrictions.eq("dateOfOccurrence", entityTemplate.getDateOfOccurrence())); } else { Date lowerBound = Ranger.castToIntervalRange(entityTemplate.getDateOfOccurrence()).getLowerBound(); Date upperBound = Ranger.castToIntervalRange(entityTemplate.getDateOfOccurrence()).getUpperBound(); if ((lowerBound == null) && (upperBound != null)) criteria.add(Restrictions.le("dateOfOccurrence", upperBound)); else if ((lowerBound != null) && (upperBound == null)) criteria.add(Restrictions.ge("dateOfOccurrence", lowerBound)); else if ((lowerBound != null) && (upperBound != null)) { criteria.add(Restrictions.le("dateOfOccurrence", upperBound)); criteria.add(Restrictions.ge("dateOfOccurrence", lowerBound)); } } } if (!entityTemplate.getTransactionIds().isEmpty()) { Set<Criterion> transactionRestrictions = new HashSet<Criterion>(); for (String transactionId : entityTemplate.getTransactionIds()) transactionRestrictions.add(Restrictions.sqlRestriction( "exists (select lti.* from EVENT_TRANSACTION_IDS lti where {alias}.EVT_ID = lti.EVT_ID and lti.TRANSACTION_ID = ?)", transactionId, StringType.INSTANCE)); if (transactionRestrictions.size() == 1) { criteria.add(transactionRestrictions.iterator().next()); } else { Iterator<Criterion> restrictions = transactionRestrictions.iterator(); Criterion orCriterion = restrictions.next(); while (restrictions.hasNext()) { orCriterion = Restrictions.or(orCriterion, restrictions.next()); } criteria.add(orCriterion); } } for (String tag : entityTemplate.getTags()) criteria.add(Restrictions.sqlRestriction( "exists (select lt.* from EVENT_TAGS lt where {alias}.EVT_ID = lt.EVT_ID and lt.TAG = ?)", tag, StringType.INSTANCE)); for (String udf : entityTemplate.getUdfs().keySet()) { Object value = entityTemplate.getUdf(udf); if (udf.equals("eventRESTResourceLimitRestriction")) { criteria.setMaxResults((Integer) value); break; } String columnName = ""; Type valueType = StringType.INSTANCE; if (value instanceof Boolean) { columnName = "BOOLEAN_VAL"; valueType = BooleanType.INSTANCE; } if (value instanceof Integer) { columnName = "INTEGER_VAL"; valueType = IntegerType.INSTANCE; } if (value instanceof Long) { columnName = "LONG_VAL"; valueType = LongType.INSTANCE; } if (value instanceof Float) { columnName = "FLOAT_VAL"; valueType = FloatType.INSTANCE; } if (value instanceof Double) { columnName = "DOUBLE_VAL"; valueType = DoubleType.INSTANCE; } if (value instanceof Date) { columnName = "DATE_VAL"; valueType = DateType.INSTANCE; } if (value instanceof byte[]) { columnName = "BINARY_VAL"; valueType = BlobType.INSTANCE; } if (value instanceof String) { columnName = "STRING_VAL"; valueType = StringType.INSTANCE; } criteria.add(Restrictions.sqlRestriction( "exists (select lu.* from EVENT_UDFS lu where {alias}.EVT_ID = lu.EVT_ID and lu.UDF = ? and lu." + columnName + " = ?)", new Object[] { udf, value }, new Type[] { StringType.INSTANCE, valueType })); } if (descending) criteria.addOrder(Order.desc("dateOfOccurrence")); else criteria.addOrder(Order.asc("dateOfOccurrence")); return criteria; }
From source file:com.metropolitan.formulasport727.dao.DiskusijaDAOImpl.java
@Override public List<Diskusija> getListaDiskusijaPoKljucnimRecima(String kljucneReci) { String[] split = kljucneReci.split(" "); Set<Diskusija> diskusije = new TreeSet<>(); for (String s : split) { System.out.println("PRETRAUJEM SVE ODOBRENE DISKUSIJE SA KLJUCNOM RECI: " + s); diskusije.addAll(session.createCriteria(Diskusija.class) .add(Restrictions.or(Restrictions.ilike("naslovDiskusije", s + " %"), Restrictions.ilike("naslovDiskusije", "% " + s), Restrictions.ilike("naslovDiskusije", "% " + s + " %"), Restrictions.ilike("naslovDiskusije", s), Restrictions.ilike("opisDiskusije", s), Restrictions.ilike("opisDiskusije", "% " + s + " %"), Restrictions.ilike("opisDiskusije", s + "%"), Restrictions.ilike("opisDiskusije", "%" + s))) .add(Restrictions.eq("odobrena", true)).list()); }//from w w w .j a v a2 s .c om List<Diskusija> lista = new ArrayList<>(); lista.addAll(diskusije); return lista; }
From source file:com.metropolitan.methotels727.dao.KorisnikDAOImpl.java
@Override public List<Korisnik> getListaSvihKorisnikaPoImenu(String ime) { return session.createCriteria(Korisnik.class).add(Restrictions.ilike("ime", ime + "%")).list(); }
From source file:com.metropolitan.methotels727.dao.KorisnikDAOImpl.java
@Override public List<Korisnik> getListaSvihKorisnikaPoPrezimenu(String prezime) { return session.createCriteria(Korisnik.class).add(Restrictions.ilike("prezime", prezime + "%")).list(); }
From source file:com.metropolitan.methotels727.dao.RezervacijaDAOImpl.java
@Override public List<Rezervacija> getListaSvihRezervacijaPoImenuKorisnika(String ime) { return session.createCriteria(Rezervacija.class).createAlias("korId", "k") .add(Restrictions.ilike("k.ime", ime + "%")).list(); }
From source file:com.metropolitan.methotels727.dao.SpecijalnePonudeDAOImpl.java
@Override public List<SpecijalnaPonuda> getListaSvihSpecijalnihPonudaPoNazivu(String naziv) { return session.createCriteria(SpecijalnaPonuda.class).add(Restrictions.ilike("naziv", naziv + "%")).list(); }
From source file:com.micromap.dao.UsersDAO.java
public List<Users> usuarioPorNome(String nome) throws Exception { List<Users> lista = null; try {// ww w.j av a 2 s . c o m session = HibernateUtil.getSessionFactory().openSession(); Criteria criteria = session.createCriteria(Users.class); criteria.add(Restrictions.ilike("nome", "%" + nome + "%")); lista = criteria.list(); } catch (Exception e) { throw new Exception(e.getMessage()); } finally { session.close(); } return lista; }
From source file:com.mycompany.methotels.services.GenericDaoImpl.java
@Override public List<T> getElementsByNames(String ime) { return hibernate.createCriteria(cls).add(Restrictions.ilike("ime", ime + "%")).list(); }
From source file:com.ponysdk.hibernate.query.decorator.AbstractCriteriaDecorator.java
License:Apache License
@SuppressWarnings("rawtypes") @Override/*from ww w . ja v a 2 s . c o m*/ public void render(final CriteriaContext context) { final Criterion field = context.getCriterion(); Criteria criteria = context.getOrderingCriteria(); final List<String> propertyNamePath = Arrays.asList(field.getPojoProperty().split(REGEX_SPLIT)); final Iterator<String> iter = propertyNamePath.iterator(); String key = null; String associationPath = null; if (propertyNamePath.size() == 1) { associationPath = iter.next(); } else while (iter.hasNext()) { key = iter.next(); if (associationPath == null) { associationPath = new String(key); } else { associationPath += "." + key; } if (iter.hasNext()) { criteria = criteria.createCriteria(associationPath, key, CriteriaSpecification.INNER_JOIN); associationPath = new String(key); } } final T value = getObjectValue(field); ComparatorType comparator = field.getComparator(); if (value != null) { if (value.toString().contains("%")) { comparator = ComparatorType.LIKE; } } if (field.getValue() != null || field.getComparator() == ComparatorType.IS_NULL || field.getComparator() == ComparatorType.IS_NOT_NULL) { switch (comparator) { case EQ: criteria.add(Restrictions.eq(associationPath, value)); break; case GE: criteria.add(Restrictions.ge(associationPath, value)); break; case GT: criteria.add(Restrictions.gt(associationPath, value)); break; case LE: criteria.add(Restrictions.le(associationPath, value)); break; case LT: criteria.add(Restrictions.lt(associationPath, value)); break; case NE: criteria.add(Restrictions.ne(associationPath, value)); break; case LIKE: criteria.add(Restrictions.ilike(associationPath, value)); break; case IS_NULL: criteria.add(Restrictions.isNull(associationPath)); break; case IS_NOT_NULL: criteria.add(Restrictions.isNotNull(associationPath)); break; case IN: if (value instanceof Collection) { criteria.add(Restrictions.in(associationPath, (Collection) value)); } else if (value instanceof Object[]) { criteria.add(Restrictions.in(associationPath, (Object[]) value)); } else { log.warn("Type not allowed for IN clause: " + value.getClass() + ", value: " + value); } break; default: log.warn("Restriction not supported: " + comparator); break; } } switch (field.getSortingType()) { case ASCENDING: criteria.addOrder(Order.asc(associationPath)); break; case DESCENDING: criteria.addOrder(Order.desc(associationPath)); break; case NONE: break; } }