Встречается на собеседованиях • сегодня
Какие знаешь стратегии наследования в JPA
В JPA есть 3 основные стратегии наследования:
- SINGLE_TABLE (по умолчанию) - все сущности иерархии хранятся в одной таблице. Используется дискриминатор для определения типа.
java
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name = "TYPE")- JOINED - каждая сущность имеет свою таблицу, а общие поля выносятся в родительскую таблицу.
java
@Inheritance(strategy = InheritanceType.JOINED)- TABLE_PER_CLASS - для каждого класса создается отдельная таблица со всеми полями (включая унаследованные).
Плюсы SINGLE_TABLE - производительность (нет JOIN), минусы - NULL-поля. JOINED - нормализованная структура, но медленнее из-за JOIN. TABLE_PER_CLASS - проблемы с полиморфными запросами.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы