Ответ 1
Сначала вы можете прочитать этот блог. Во-вторых, в соответствии с интерфейсом JpaSpecificationExecutor
, который должны реализовывать ваши репозитории, вы можете выполнить следующие запросы, используя Спецификации:
count(Specification<T> spec)
List<T> findAll(Specification<T> spec)
Page<T> findAll(Specification<T> spec, Pageable pageable)
List<T> findAll(Specification<T> spec, Sort sort)
T findOne(Specification<T> spec)
Поэтому вам не нужно смешивать @Query
(или методы запросов) и Specification
.
Вы можете выразить это условие:
firstName <> ?1
вместо этого используйте Specification
. Затем вы можете объединить столько спецификаций, сколько захотите.