Допустим, у меня есть критерий
@Repository
public interface FooRepository extends JpaRepository<Foo, Integer>, JpaSpecificationExecutor<Foo> {
static Specification<Foo> byBars(Collection<String> bars) {
return (Root<Foo> root, CriteriaQuery<?> query, CriteriaBuilder criteriaBuilder) -> {
if (bars.isEmpty()) {
return criteriaBuilder.disjunction();
}
return root.get("bar").in(bars);
};
}
}
Хорошо, это дает нам fooRepository.findAll(byBars(...) )
Теперь, как мне определить метод хранилища для массового удаления?
deleteBy(Specification<Foo> specification);
не работает, также не работают
void deleteAll(Specification<Foo> specification);
или
void delete(Specification<Foo> specification);
, поскольку
Не найдено свойство deleteBy для типа Foo!