При создании предиката для книги сущностей я хотел бы иметь возможность оставить соединение в категории (ManyToMany), чтобы добавить предикат AND в категорию. Я мог бы просто добиться этого, если бы у меня был экземпляр 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)));
Но как действовать для левого соединения без экземпляра jpaQuery?