У меня есть следующая структура, которую я не могу понять, как вставить правильное отображение гибернации.
public class Company{
@OneToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "details_x")
private Details detailsX;
@OneToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "details_y")
private Details detailsY;
}
и
public class Details{
....
private Type type; //Enum that could be x or y
@OneToOne
private Company company;
}
Компания располагает точными данными для xи один для тебя.Детали могут использоваться только одной компанией в x или y.С точки зрения базы данных, я думаю, что лучшая установка состоит в том, чтобы 2 столбца в tbl_company ссылались на Pk of Details.Но это приводит к тому, что отношение «Детали» к компании не работает.
Есть ли у кого-нибудь какие-либо предложения о том, как лучше всего сопоставить это?
Редактировать: добавлен тип в Сведения