Пусть у меня есть таблица
USER
-id :long
-логин :varchar
-оружие :varchar
-magic :varchar
И я хочу сопоставить эту таблицу с двумя классами (, используя Hibernate/JPA)
class Mag
{
long id;
String login;
String weapon;
}
и
class Warrior
{
long id;
String login;
String magic;
}
. И если я отправлю запрос HQL :SELECT m FROM Mag m WHERE m.login = ?
, я получу экземпляр Mag
. и если я отправлю запрос HQL :SELECT w FROM Warrior w WHERE w.login = ?
, я получу экземпляр Warrior
Я пытаюсь сделать что-то вроде этого
@Entity
@Table(name = "User")
class User
{
long id;
String login;
}
@Entity
class Mag extends User
{
String magic;
}
@Entity
class Warrior extends User
{
String weapon;
}
Но @Inheritance требует столбца дискриминатора, а у меня его нет.