Я пытаюсь настроить очень простую базу данных с двумя таблицами на Java и соединить их, используя определенную таблицу соединений.
1-я таблица Student состоит из идентификатора, имени и фамилии.
2-й стол Курс состоит из идентификатора и имени.
Таблица соединений с именем Enrollment должна иметь course_id и student_id, которые происходят из 1-й и 2-й таблиц.
Моя проблема в том, что я не знаю, как отобразить идентификаторы при расширении SpringPA JPA AbstractPersistable, в котором есть поле первичного ключа с автоинкрементом.
Мой код:
Слушатель:
// Package
// Imports
@Entity
@Data @NoArgsConstructor @AllArgsConstructor
public class Student extends AbstractPersistable<Long> {
private String first_name;
private String last_name;
}
Курс:
// Package
// Imports
@Entity
@Data @NoArgsConstructor @AllArgsConstructor
public class Course extends AbstractPersistable<Long> {
private String name;
}
Я пытался использовать аннотацию @ManyToMany по-разному, но, поскольку идентификатор первичного ключа обрабатывается AbstractPersistable, мне не удалось сопоставить «невидимые» идентификаторы для таблицы соединений.
Я также знаю, что таблицу соединений и ее столбцы можно именовать с помощью @Column, @JoinColumn и @JoinTable. Я еще не зашел так далеко.