2012-04-19 40 views
10

Hi,

Làm thế nào tôi có thể đúc Integer vào một String cho Tiêu chuẩn truy vấn?JPA - Tiêu chuẩn Query - Tìm kiếm Integer sử dụng "like"

tức

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

Tôi wan để tạo bộ lọc cho phần DataTable .... và tức là cho giá trị ID Tôi muốn để có được bộ lọc như thế này:

nếu tôi gõ "1" Tôi sẽ nhận được tất cả các mục có ID chứa "1" (223.122 ID sẽ vẫn đúng)

Trả lời

2

vấn đề giải quyết này cho tôi:

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

Predicate predicate = criteriaBuilder.like(filterKeyExp ,"%" + filterValue.trim().toLowerCase() + "%"); 
Các vấn đề liên quan