Я ищу способ связать сущность с другой сущностью исключительно через спящий режим (без дополнительных сопоставлений столбцов БД) и не требуя отдельных вызовов DAO.Я искал решение, и единственное, что я мог найти, было @Formula
, но я не мог заставить его работать.Подумайте:
@Entity
class CommonEntity {
@MagicAnnotation("maybe with HQL?")
private SuperEntity superEntity;
}
@Entity
class SuperEntity { }
Это означает, что иногда CommonEntity
является SuperEntity
, и я хочу иметь геттер на самом POJO, чтобы он имел доступ к SuperEntity
через простой get()
,Есть ли способ сделать это чисто так, чтобы, когда я делаю что-то вроде commonEntityDAO.get(1L);
, где 1L является SuperEntity, тогда сущность будет установлена?
Таблицы в базе данных будут выглядеть так:
table common_entity ( common_entity_id int primary key, name string );
table super_entity ( super_entity_id int primary key, extra_field string, common_entity_id int );