저는 스프링 데이터 JPA를 처음 접했고, QueryDSL과 함께 사용하는 방법을 잘 이해하고 있습니다. QueryDSL이 없으면 @Query 주석을 사용하여 SpringData 인터페이스에 모든 쿼리를 간단하게 작성할 수 있습니다.스프링 데이터 JPA와 QueryDSL
내가보기에 QueryDSL을 사용하여 동일한 경험을 가지려면 내 자신의 사용자 지정 저장소 구현을 만들고 내 repo 인터페이스를 사용자 지정 구현 인터페이스를 확장하거나 모든 QueryDSL 쿼리를 서비스 계층에 배치해야합니다. 내 레포를 감싸고있어.
첫 번째 경우에는 실제 repo 객체에 액세스 할 수 없기 때문에 내 맞춤 repo에서 SD 자동 생성 된 메소드 (예 : findAll (QueryDSL 조건 자))를 사용할 수 없습니다. 두 번째 경우 나는 repo 계층 대신에 서비스 계층에 쿼리 로직을 넣을 것입니다.
어느 솔루션도 특히 나에게 매력적이지 않습니다. 더 적절한 제 3의 방법이 있습니까? 아니면 QueryDSL과 스프링 데이터를 올바르게 사용하는 방법을 잘못 이해하고 있습니까?
감사합니다. 에릭
문제는'술어의 조합을 저장소에 숨김 '이 아니고 제게'그룹 by'과 ...를 내 쿼리에 추가하고 술어 만 실행하는 것처럼 보이지 않습니다. – azerafati
불행히도 ,'QueryDslPredicateExecutor'는'groupBy' 등을 사용할 수 없습니다. 오직'where' 부분 만 사용할 수 있습니다. 그것은 종종 충분하지 않습니다. 하지만'QueryDslRepositorySupport'를 기본 클래스로 사용하는 커스텀 리파지토리는 정말 좋습니다! – djxak
@azerafati, https://github.com/infobip/infobip-spring-data-jpa-querydsl에서 살펴보십시오. 원하는 내용 일 수도 있습니다. – lpandzic