Возможно ли сопоставить единый объект с несколькими таблицами с использованием JPA?
У меня есть прежний домен базы данных, который я не могу изменить, но было возможно задумать объект домена для решения моей проблемы.
Таблицы устаревших: Таблица 1 (ID, VALUE) ТАБЛИЦА 2 (ID, ДАТА) ТАБЛИЦА 3 (ID, ОПИСАНИЕ)
Домен: NewConceptDomain {int value; Дата; Строковое описание; }
Как я могу сопоставить новый NewConceptDomain с помощью JPA?
Ответы
Ответ 1
Используйте @SecondaryTable
(http://en.wikibooks.org/wiki/Java_Persistence/Tables#Multiple_tables)
@Entity
@Table(name="TABLE1")
@SecondaryTables({
@SecondaryTable(name="TABLE2",
pkJoinColumns = @PrimaryKeyJoinColumn(name="ID", referencedColumnName="ID")
),
@SecondaryTable(name="TABLE3",
pkJoinColumns = @PrimaryKeyJoinColumn(name="ID", referencedColumnName="ID")
)}
)