2012-04-19 6 views
10

Hallo,

Wie ich Integer in einen String für Criteria Abfrage werfen können?JPA - Kriterien Abfrage - Suche nach Integer mit "gefällt mir"

dh

Predicate predicate = criteriaBuilder.like((Expression) root.get(filterKey), 
        "%" + filterValue + "%"); 

I wan Filter für Datatable-Komponente zu erstellen .... und das heißt für ID-Wert I-Filter wie diese erhalten möchten:

wenn ich "1" geben werde ich erhalten alle Artikel mit der ID „1“ (223122 ID wird noch korrekt)

Antwort

2

Dieses gelöstes Problem für mich:

Expression<String> filterKeyExp = root.get(filterKey).as(String.class); 
filterKeyExp = criteriaBuilder.lower(filterKeyExp); 

Predicate predicate = criteriaBuilder.like(filterKeyExp ,"%" + filterValue.trim().toLowerCase() + "%");