[SPRING] @Query 정의와 스펙을 하나의 Spring Data JPA 저장소 메소드에 결합 할 수 있습니까?
SPRING@Query 정의와 스펙을 하나의 Spring Data JPA 저장소 메소드에 결합 할 수 있습니까?
하나의 저장소 메소드에서 @Query 주석과 스펙을 모두 사용할 수 있습니까? 예를 들어, 다음과 같은 메소드가 필요합니다.
@Query(value="SELECT e from EMPLOYEE where firstName <> ?1")
public Page<Employee> findEmployeeBySomethigFancy(String firstName, Pageable pageable, Specification<Employee> emp);
Predicate로 전체 쿼리를 작성하고 @Query 주석을 제거 할 수 있습니까?
해결법
-
==============================
1.먼저이 블로그 게시물을 먼저 읽고 싶을 것입니다. 둘째, 리포지토리가 구현해야하는 JpaSpecificationExecutor 인터페이스에 따라 사양을 사용하여 다음 쿼리를 실행할 수 있습니다.
먼저이 블로그 게시물을 먼저 읽고 싶을 것입니다. 둘째, 리포지토리가 구현해야하는 JpaSpecificationExecutor 인터페이스에 따라 사양을 사용하여 다음 쿼리를 실행할 수 있습니다.
따라서 @Query (또는 query-methods)와 스펙을 혼합 할 필요는 없습니다.
이 조건을 표현할 수 있습니다.
firstName <> ?1
대신에 스펙을 사용합니다. 그런 다음 원하는만큼 많은 사양을 결합 할 수 있습니다.
from https://stackoverflow.com/questions/26379522/can-i-combine-a-query-definition-and-specifications-on-one-spring-data-jpa-repo by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] Spring에서 MappingJacksonJsonView가 사용하는 JSON 필드 이름 바꾸기 (0) | 2019.04.04 |
---|---|
[SPRING] Spring 데이터 나머지에 목록을 게시하는 방법? (0) | 2019.04.04 |
[SPRING] Spring Java Configuration - enum에서 bean으로의 참조를 만드는 방법 - 참조 (0) | 2019.04.04 |
[SPRING] 스프링 부트 2.0 애플리케이션이 schema.sql을 실행하지 않는 이유는 무엇입니까? (0) | 2019.04.03 |
[SPRING] XML 대신 java config를 사용하여 저장소 populator bean을 선언하는 방법? (0) | 2019.04.03 |