У меня есть 2 таблицы, ЧЕЛОВЕК и РАБОЧЕЕ МЕСТО, отношения которых один к одному.Мне нужна третья таблица с именем PERSON_WORKPLACE, где можно объединить две таблицы, упомянутые выше.Структура должна быть следующей:
У меня сейчас такой код:
ЧЕЛОВЕК:
public class Person {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String name;
private String username;
private String password;
@OneToOne(cascade = CascadeType.ALL)
@JoinTable(name = "person_workplace",
joinColumns = { @JoinColumn(name = "person_id", referencedColumnName = "id") },
inverseJoinColumns = { @JoinColumn(name = "workplace_id", referencedColumnName = "id") })
private Workplace workplace;
}
РАБОЧЕЕ МЕСТО:
public class Workplace extends Auditable{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private int number;
private float coordX;
private float coordY;
@ManyToOne(fetch=FetchType.LAZY)
private Floor floor;
@OneToOne(mappedBy = "workplace")
private Person person;
}
Таким образом, моя таблица PERSON_WORKPLACE просто имеет 2 столбца, с двумя идентификаторами из PERSON и WORKPLACE, и должна быть такой, как на картинке.С его собственным идентификатором, двумя идентификаторами и дополнительным столбцом с именем date.
Спасибо!