Давайте у меня есть таблица под названием «Актив». Определение таблицы актива выглядит следующим образом:
AssetId pk
AssetTypeBookFlag number
AssetTypeToyFlag number
Теперь, если AssetTypeBookFlag = 1, я должен соединиться с таблицей книг, у которой PK BookId такой же, как AssetId
То же самое с AssetTypeToyFlag:Если это = 1, то мне нужно объединиться с таблицей Toys, ToyId которой совпадает с AssetId
. Теперь у меня есть эти три сущности Spring JPA:
Asset, Book, Toy
Как я могу условно присоединиться к таблице книг и игрушек в зависимости от соответствующего флага?
Я пробовал что-то вроде этого:
@OneToOne(optional=true)
@JoinColumn(name = "ASSET_ID",insertable=false,updatable=false)
private Book book;
Я понятия не имею, как условно объединить Книгу и Игрушку. Также, если я сделаю выше, он просто не получит никаких данных.