Я пытаюсь отобразить универсальные типы в Hibernate. Я искал и не мог найти четких ответов, как это сделать. Помощь будет высоко ценится.
Вот несколько примеров классов:
public class Person {
...
}
public class PersonA extends Person {
...
}
public class PersonB extends Person {
...
}
public class PersonHolder<P extends Person> {
private P person;
...
}
public class People {
private Map<String, PersonHolder<PersonA> > aPeople;
private Map<String, PersonHolder<PersonB> > bPeople;
...
}
Я использую собственное отображение Hibernate (XML, без аннотаций). У меня уже есть отображение Hibernate для Person, PersonA и PersonB, но я хотел бы знать, возможно ли отобразить создание экземпляра класса PersonHolder универсальным способом без явного создания подклассов, реализующих универсальный тип, таких как:
public class PersonAHolder extends PersonHolder<PersonA> {
...
}
(и отображение этого класса как обычного класса).
Спасибо!