Скажите, что у меня есть следующие классы:
Класс курса:
@Entity
public class Course {
private @Id @GeneratedValue Long id;
@ManyToMany
@JoinTable(
name = "course_subject",
joinColumns = @JoinColumn(name = "courseId"),
inverseJoinColumns = @JoinColumn(name = "subjectId"))
Set<Subject> subjects;
}
Предметный класс
@Entity
public class Subject {
private @Id @GeneratedValue Long id;
@ManyToMany(mappedBy = "subjects")
Set<Course> courses;
}
Это создает правильную схему в базе данных. Однако что, если я хочу дать сгенерированной таблице course_subject
поле id
, а затем ссылаться на эту таблицу в другом классе? Как это:
@Entity
public class Class {
private @Id @GeneratedValue Long id;
// How to reference the generated table?
private Long courseSubjectId;
}
Есть ли способ сделать это через JPA без создания дополнительных классов Java?