Есть класс консультанта. Консультант может иметь много опыта, как наемный, работающий не по найму, фрилансер. Для каждого типа опыта существуют разные данные для сохранения в базе данных.
оклад:
Общий опыт
Название компании
Опыт Время в годах
Предложение / Наслаждающееся письмо Ссылка
Частное предприятие:
Название компании
Общий опыт
CIN_Number
GST_Number
CompanyCertificateLinkUrl
FreeLancer:
Общий опыт
Пользователь может иметь опыт работы в более чем одном типе профессии, например, консультант является наемным и фрилансером, или самостоятельно занятым, а также наемным и фрилансером. Поэтому я не совсем понимаю, как создать класс @Entity для этого типа использования.
Мое решение
@Entity
class Consultant{
@Id
int id;
@OneToOne
Salaried semp;
@OneToOne
SelfEmployed selfemp;
@OneToOne
Freelancer femp;
}
Но я думаю, что это не очень хорошая практика, так как это приведет ко многим пустым полям в базе данных.
ЛЮБОЕ ЛУЧШЕЕ РЕШЕНИЕ