Package javax.persistence.criteria

Examples of javax.persistence.criteria.Predicate


    EntityManager em = getOrCreateEntityManager();
    em.getTransaction().begin();
    CriteriaQuery<Product> criteria = em.getCriteriaBuilder().createQuery( Product.class );
    Root<Product> from = criteria.from( Product.class );
    ParameterExpression<String> param = em.getCriteriaBuilder().parameter( String.class );
    Predicate predicate = em.getCriteriaBuilder().equal( from.get( Product_.id ), param );
    Predicate predicate2 = em.getCriteriaBuilder().equal( from.get( Product_.name ), param );
    criteria.where( em.getCriteriaBuilder().or( predicate, predicate2 ) );
    assertEquals( 1, criteria.getParameters().size() );
    TypedQuery<Product> query = em.createQuery( criteria );
    int hqlParamCount = countGeneratedParameters( query.unwrap( Query.class ) );
    assertEquals( 1, hqlParamCount );
View Full Code Here


        CriteriaQuery<Object> query = cb.createQuery();
        Root<T> from = query.from(entityType);
        query = query.select(from);

        int i = 0;
        Predicate where = null;
        for (String condition : conditions) {
            SingularAttribute<? super T, ?> attribute = et.getSingularAttribute(condition);
            Path<?> path = from.get(attribute);
            Class<?> javaType = attribute.getType().getJavaType();

            Predicate currentClause;
            if (javaType.equals(String.class)) {
                currentClause = cb.like((Expression<String>) path, (String) args[i++]);
            } else if (Number.class.isAssignableFrom(javaType) || javaType.isPrimitive()) {
                currentClause = cb.equal(path, args[i++]);
            } else {
View Full Code Here

        CriteriaBuilder criteriaBuilder = em.getCriteriaBuilder();
        //CriteriaQuery<PathClient> q = cb.createQuery(PathClient.class);
        CriteriaQuery<PathClient> criteriaQuery = criteriaBuilder.createQuery(PathClient.class);
        Root<PathClient> clients = criteriaQuery.from(PathClient.class);
        criteriaQuery.select(clients);
        Predicate predicate = criteriaBuilder.equal(clients.get(PathClient_.nameFirst), firstName);
        criteriaQuery.where(predicate);
        TypedQuery<PathClient> typedQuery = em.createQuery(criteriaQuery);
        List<PathClient> resultList = typedQuery.getResultList();
        for (PathClient i : resultList) {
          results.add(i.getClientKey());
View Full Code Here

      //CriteriaQuery<PathClient> q = cb.createQuery(PathClient.class);
      CriteriaQuery<HUDXML3Blob> criteriaQuery = criteriaBuilder.createQuery(HUDXML3Blob.class);
      Root<HUDXML3Blob> blobs = criteriaQuery.from(HUDXML3Blob.class);
      criteriaQuery.select(blobs);
      log.info("searching for hudxml3blob with xml_key: " + xml_key_inner);
      Predicate predicate = criteriaBuilder.equal(blobs.get(HUDXML3Blob_.xmlUrl), xml_key_inner);
      criteriaQuery.where(predicate);
      TypedQuery<HUDXML3Blob> typedQuery = em.createQuery(criteriaQuery);
      try {
          log.info("sleeping for 200ms for transaction to complete");
          Thread.sleep(200);
View Full Code Here

       
        CriteriaBuilder cb = getEntityManager().getCriteriaBuilder();
        CriteriaQuery cq = cb.createQuery();
        Root<Request> z = cq.from(Request.class);
           
        Predicate whereState = null;
       
        if(listStateRequest != null && !listStateRequest.isEmpty()) {
            for(StateRequest st: listStateRequest) {
                if(whereState == null) {
                    whereState = cb.equal(z.get(Request_.stateRequest), st);
                } else {
                    whereState = cb.or(whereState, cb.equal(z.get(Request_.stateRequest), st));
                }
            }
        }
       
        Predicate whereCreatedBy = null;
        Predicate whereCreatedByOrg = null;
       
        if(createdBy != null) {
           
            whereCreatedBy = cb.equal(z.get(Request_.createdBy), createdBy);
           
View Full Code Here

       
        CriteriaBuilder cb = getEntityManager().getCriteriaBuilder();
        CriteriaQuery cq = cb.createQuery();
        Root<Request> z = cq.from(Request.class);
           
        Predicate whereState = null;
       
        if(listStateRequest != null && !listStateRequest.isEmpty()) {
            for(StateRequest st: listStateRequest) {
                if(whereState == null) {
                    whereState = cb.equal(z.get(Request_.stateRequest), st);
                } else {
                    whereState = cb.or(whereState, cb.equal(z.get(Request_.stateRequest), st));
                }
            }
        }
       
        Predicate wherePerfomer = null;
       
        if(perfomer != null && showRequestOnlyForCurrentUser) {
            wherePerfomer = cb.equal(z.get(Request_.performer), perfomer);
        }
       
View Full Code Here

       
        CriteriaBuilder cb = getEntityManager().getCriteriaBuilder();
        CriteriaQuery cq = cb.createQuery();
        Root<Request> z = cq.from(Request.class);
       
        Predicate where = cb.conjunction();
        Predicate whereCreatedByOrg = null;
               
        if(id != null) {
            where = cb.and(where, cb.equal(z.get(Request_.id), id));
        }
       
View Full Code Here

        Root<Person> p = c.from(Person.class);
        c.where(cb.equal(p.get(Person_.name), "XYZ"));
       
        assertEquivalence(c, jpql);
       
        Predicate where = c.getRestriction();
        c.where(cb.or(where, cb.equal(p.get(Person_.name), "ABC")));
       
        assertEquivalence(c, editedjpql);
    }
View Full Code Here

        Root<Person> p = c.from(Person.class);
        c.where(cb.equal(p.get(Person_.name), "XYZ"));
       
        assertEquivalence(c, jpql);
       
        Predicate where = c.getRestriction();
        c.where(cb.and(where, cb.equal(p.get(Person_.name), "ABC")));
       
        assertEquivalence(c, editedjpql);
    }
View Full Code Here

        String jpql = "select p from Person p where p.name='XYZ' and p.name='ABC'";
        String editedjpql = "select p from Person p where p.name='XYZ'";
       
        CriteriaQuery<Person> c = cb.createQuery(Person.class);
        Root<Person> p = c.from(Person.class);
        Predicate p1 = cb.equal(p.get(Person_.name), "XYZ");
        Predicate p2 = cb.equal(p.get(Person_.name), "ABC");
        c.where(p1,p2);
       
        assertEquivalence(c, jpql);
       
        Predicate where = c.getRestriction();
        List<Expression<Boolean>> exprs = where.getExpressions();
        assertEquals(2, exprs.size());
        assertTrue(exprs.contains(p1));
        assertTrue(exprs.contains(p2));
        exprs.remove(p1);
        // editing from the list does not impact the query
View Full Code Here

TOP

Related Classes of javax.persistence.criteria.Predicate

Copyright © 2018 www.massapicom. 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.