Предположим, у меня есть:
class Student {
int id;
String name;
List<Course> courses; //Lazily loaded as per Hiberante config
}
Теперь предположим, что у меня есть список студентов и, чтобы оптимизировать выборку списка для всех этих студентов, я должен был выбрать их пакетно, а не позволить Hibernate вызывать отдельный SQLпо одному.Я не могу отключить отложенную загрузку, так как во многих других путях кода я не получу доступ к свойству курса.
Я, безусловно, могу написать функцию, которая будет принимать список CourseIds и возвращать List, а затем прикреплять эти объекты кСеанс Hibernate, но эти объекты не будут связаны с объектами Student, загруженными Hibernate.Если я вызываю что-то вроде student.setCourses (), то рискую, что Hibernate посчитает сеанс грязным, и попробую обновить объекты Student.
Мне бы очень хотелось услышать от людей, которые сталкивалисьпохожие проблемы при использовании Hibernate.