Каков наилучший способ сохранить иерархию с абстрактным классом без таблицы

1

У меня простая модель наследования:

public abstract class Base {
    int id;
    string name;
}

public class Derived1 extends Base {
   int valueD1;
}

public class Derived2 extends Base {
   int valueD2;
}

Как следует сопоставить классы (с JPA аннотации), так что у меня есть отдельные таблицы для Derived1 и Derived2 (таблица на конкретный класс) и без таблицы для базы.

Должен ли я использовать @MappedSuperclass или @Embeddable (и пропустить наследование) или @Inheritance?

  • 0
    Не делай таких вещей, у тебя будут проблемы в будущем.
  • 0
    @RomanC что ты имеешь в виду?
Показать ещё 3 комментария
Теги:
hibernate
jpa
persistence

1 ответ

0

Используйте @MappedSuperclass и определите отдельные таблицы для каждого объекта, IMHO,

Но это зависит от того, будет ли вы, скорее всего, запросить родительский класс или использовать оба производных объекта для себя, без необходимости запрашивать две таблицы.

  • 0
    Может ли сопоставленный суперкласс иметь идентификатор первичного ключа?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню