엔티티 북에 대한 술어를 작성할 때 왼쪽에 범주 (ManyToMany) 조인을 허용하여 카테고리에 AND 술어를 추가 할 수 있습니다. . 단순히 달성 할 수있는 나는 JPAQuery 인스턴스가있는 경우 :술어를 작성할 때 JPAQuery 인스턴스가없는 경우에 참여하는 방법
if (catId != null) {
jpaQuery.leftJoin(book.categories, category);
jpaQuery.where(category.id.eq(catId).or(category.parentCategory.id.eq(catId)));
}
를하지만 조건부를 구축 할 때 내가 가진 아직 JPAQuery하지 않습니다. 따라서 술어 자체 내가 할 수있는 :
booleanBuilder.and(category.id.eq(this.categoryId).or(category.parentCategory.id.eq(this.categoryId)));
그러나 leftjoin가 어떻게 jpaQuery 인스턴스없이 진행 할
?
이 뉴스와 관련된 모든 뉴스 는요? 나는 그 곳 곳곳에서 너무 많은 번거 로움없이 조인 가져 오기의 우아한 솔루션을 찾고 있습니다. 분명히 Spring 데이터는 유스 케이스가 더 복잡하고 그 다음에 하나의 "시나리오에서 선택하십시오"를 기본 예제에서와 같이 생각하지 않았습니다. .. –
넵 나는 해결책을 찾았습니다. 스프링 인터페이스에 대한 확장 코드를 만들었습니다 : 공용 인터페이스 TworkQueryDslRepository JpaRepository를 확장하고 prep 메소드를 추가했습니다. JPAQuery createQuery(); 그리고 새로운 매개 변수를 가진 모든 실행 메소드를 JPAQuery : ex age findAll (JPAQuery jpaQuery, Predicate 술어, Pageable pageable); 목표는 Repo를 빌드하고 나에게 JPAQuery를 제공하여 가져올 수 있도록하는 것입니다. 두 번째 단계에서는 거의 표준 repo API를 호출 할 수 있지만 제 경우에는 JPAQuery를 첫 번째 매개 변수로 사용합니다. 때때로 PullResquest를 만들어야합니다. –