есть ли шанс получить объединенную сущность с использованием предиката?
@Entity
public class Student {
@Id
private int id;
private String hobby;
private String favouriteColor;
private String name;
@ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.REFRESH)
@JoinColumn(name = "CLASS_ID", referencedColumnName = "ID")
private Classroom classroom;
}
@Entity
public class Classroom {
@Id
private int id;
private String classRoom;
private List<Student> students;
}
У меня есть некоторый предикат
public class StudentPredicate {
private StudentPredicate() {}
public static Predicate createPredicate(final Student filter) {
QStudent student = QStudent.student;
BooleanBuilder builder = new BooleanBuilder();
if (isNotBlank(filter.getHobby())) {
builder.and(student.hobby.eq(filter.getHobby());
}
if (isNotBlank(filter.getFavouriteColor())) {
builder.and(student.favouriteColor.eq(filter.getFavouriteColor()));
}
return builder.getValue();
}
}
и репозиторий
@Repository
public interface StudentRepository extends CrudRepository<Student, Integer>, QueryDslPredicateExecutor<Student> {
}
и сейчасКак я могу найти всех учеников с выбранными классами?
studentRepository.findAll(predicate)
Как сказать, чтобы запросить dsl, что эти findAll должны получить классную комнату?