diff --git a/src/main/java/org/springframework/data/jpa/repository/JpaSpecificationExecutor.java b/src/main/java/org/springframework/data/jpa/repository/JpaSpecificationExecutor.java index c62bbecfe..76a46736e 100644 --- a/src/main/java/org/springframework/data/jpa/repository/JpaSpecificationExecutor.java +++ b/src/main/java/org/springframework/data/jpa/repository/JpaSpecificationExecutor.java @@ -19,6 +19,7 @@ import java.util.List; import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; +import org.springframework.data.domain.Sort; import org.springframework.data.jpa.domain.Specification; @@ -59,6 +60,17 @@ public interface JpaSpecificationExecutor { Page findAll(Specification spec, Pageable pageable); + /** + * Returns all entities matching the given {@link Specification} and + * {@link Sort}. + * + * @param spec + * @param sort + * @return + */ + List findAll(Specification spec, Sort sort); + + /** * Returns the number of instances that the given {@link Specification} will * return. diff --git a/src/main/java/org/springframework/data/jpa/repository/support/SimpleJpaRepository.java b/src/main/java/org/springframework/data/jpa/repository/support/SimpleJpaRepository.java index df0d306dd..62a971cca 100644 --- a/src/main/java/org/springframework/data/jpa/repository/support/SimpleJpaRepository.java +++ b/src/main/java/org/springframework/data/jpa/repository/support/SimpleJpaRepository.java @@ -285,6 +285,20 @@ public class SimpleJpaRepository implements } + /* + * (non-Javadoc) + * + * @see + * org.springframework.data.jpa.repository.JpaSpecificationExecutor#findAll + * (org.springframework.data.jpa.domain.Specification, + * org.springframework.data.domain.Sort) + */ + public List findAll(Specification spec, Sort sort) { + + return getQuery(spec, sort).getResultList(); + } + + /* * (non-Javadoc) *