JPA Criterios de API: cómo expresar literal verdadera y literal falso?

¿Cómo puedo expresar literal true y literal false en JPA Criterios del API?

Estoy buscando algo como Predicate alwaysTrue = CriterialBuilder.DefaultLiterals.TRUE (análogo a la java.lang.Boolean.TRUE).

OriginalEl autor Abdull | 2013-02-03

2 Kommentare

  1. 34

    Para obtener una siempre verdadero Predicate ejemplo, el uso de criteriaBuilder.y().

    Para obtener una siempre falso Predicate ejemplo, el uso de criteriaBuilder.o().

    javax.persistence.criteria.Predicate always = true; resultados en Type mismatch: cannot convert from boolean to Predicate.
    CriteriaBuilder.and() devuelve siempre un cierto predicado. docs.oracle.com/javaee/6/api/javax/persistence/criteria/…
    … y una Predicate ejemplo que siempre se evalúa a false, se puede utilizar javax.persistence.criteria.Predicate alwaysFalse = aCriteriaBuilder.and().not() … ¿donde la API de diseñadores pensando?!
    Usted puede utilizar CriteriaBuilder.or(). También me encuentro con esta API horrible.

    OriginalEl autor JB Nizet

  2. 8

    CriteriaBuilder#conjunción() devuelve un VERDADERO predicado.

    CriteriaBuilder#disyunción() devuelve un FALSE predicado.

    /**
     * Create a conjunction (with zero conjuncts).
     * A conjunction with zero conjuncts is true.
     *
     * @return and predicate
     */
    Predicate conjunction();
    
    /**
     * Create a disjunction (with zero disjuncts).
     * A disjunction with zero disjuncts is false.
     *
     * @return or predicate
     */
    Predicate disjunction();

    OriginalEl autor Patrick Garner

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea