Есть такой пример:
@Entity
public class Student
{
@Id
private long id;
private String name;
@ManyToMany
@JoinTable (name="student_university",
joinColumns=@JoinColumn (name="student_id"),
inverseJoinColumns=@JoinColumn(name="university_id"))
private List<University> universities;
// set/get не представлены
}
@Entity
public class University
{
@Id
private long id;
@Column
private String name;
@ManyToMany
@JoinTable(name="student_university",
joinColumns=@JoinColumn(name="university_id"),
inverseJoinColumns=@JoinColumn(name="student_id"))
private List<Student> students;
// set/get не представлены
}
Вот описание к этому примеру - Параметр joinColumns указывает на поле, которое используется для прямой связи (идентификатор student_id). Параметр inverseJoinColumns указывает на поле, которое используется для обратной связи (идентификатор university_id). Для указания столбцов связи из таблицы используется аннотация @JoinColumn.
Мне непонятно отсюда, что значит "для прямой связи" и "для обратной связи".Почему параметры подставляются в joinColumns и inverseJoinColumns в таком, как бы обратном порядке?
Продвижение своими сайтами как стратегия роста и независимости