Итак, у меня есть список значений. Мне нужно выяснить, есть ли некоторые значения из этого списка, не возвращать данные из базы данных (например, неправильно введенные значения). Единственный возможный вариант, который я нашел, это просто попытаться получить данные для каждого значения этого списка и проверить, есть ли в нем что-нибудь. Но это решение очень глупо, потому что список значений может достигать нескольких тысяч. Так есть ли у вас какие-либо предложения?
@Override
public Specification<T> specification (Model model, List<String> values) {
return new Specification<T>() {
@Override
public Predicate toPredicate(Root<T> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
Path path = getPath(root, model.getPath());
return cb.in(path).value(values);
}
};
}