Я ищу альтернативу спецификации для данного сценария - PullRequest
0 голосов
/ 22 ноября 2018

Я вызываю findall() метод JpaRepository следующим образом:

Служба

on.findall(specificationsbuilder.getspecifications(params), paegable obj)  

specificationsbuilder.getspecifications(param)

возвращает спецификации

Мой вопрос: если спецификации будут нулевыми, мои найдут все(технические характеристики, паегабельно) работа

Ответы [ 2 ]

0 голосов
/ 22 ноября 2018

Согласно исходному коду SimpleJpaRepository это должно работать, потому что @Nullable говорит, что примет null:

@Override
    public Page<T> findAll(@Nullable Specification<T> spec, Pageable pageable) {

        TypedQuery<T> query = getQuery(spec, pageable);
        return isUnpaged(pageable) ? new PageImpl<T>(query.getResultList())
                : readPage(query, getDomainClass(), pageable, spec);
}
0 голосов
/ 22 ноября 2018

читайте здесь: https://jira.spring.io/browse/DATAJPA-121, по состоянию на последние данные пружины jpa, если ваш параметр имеет значение NULL, запрос будет автоматически иметь нулевое значение.

Кроме того, начиная с данных Spring jpa 2.0, пружина теперь поддерживает @Обнуляемая аннотация.Это может быть полезно для обработки переданных нулевых параметров.

@ Nullable - для использования с параметром или возвращаемым значением, которое может быть нулевым.

, если значение является нулевымон автоматически вернет истину, а если не ноль, он будет искать это значение в таблице.

...