Встречается на собеседованиях • сегодня

Как устроены коллекции в Hibernate

Коллекции в Hibernate работают через прокси-объекты, которые реализуют интерфейсы `List`, `Set`, `Map` и т.д. Они лениво загружают данные при первом обращении и управляются Hibernate для синхронизации с БД. **Основные типы коллекций:** - `@OneToMany`, `@ManyToMany` – связывают сущности - `@ElementCollection` – для встраиваемых объектов или базовых типов **Пример:** ```java @Entity public class User { @Id private Long id; @OneToMany(mappedBy = "user", cascade = CascadeType.ALL) private List orders = new ArrayList<>(); // Ленивая загрузка по умолчанию } ``` **Особенности:** - Ленивая загрузка (`FetchType.LAZY`) по умолчанию для коллекций - Используется `PersistentBag`, `PersistentSet` и др. вместо стандартных реализаций - Изменения коллекции автоматически отслеживаются (если `cascade` разрешено) - Для оптимизации можно использовать `@BatchSize` или `JOIN FETCH` в запросах Важно избегать `N+1` проблемы через правильную настройку `fetch` стратегии.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы