JPA Отображение отношений один-ко-многим - PullRequest
0 голосов
/ 27 апреля 2019

Я новичок в Spring Boot, и у меня есть класс Student.java и другой Project.java. Каждый студент может иметь несколько проектов (отношение 1: M). Я хочу отобразить их, и у меня есть следующее:

В Student.java:

@OneToMany(mappedBy="student")
private List of projects;

В Project.java:

@ManyToOne <br>
@JoinColumn(name=student_id)
private Student student; 

Я знаю, что @JoinColumn добавляет столбец в таблицу project в базе данных, но я не понимаю, что делает mappedBy ? Я нашел это: « mappedBy указывает, что сущность является обратной по отношению к отношениям. » Что означает обратная по отношению к значению?

Я попробовал код в базе данных, и когда у меня нет mappedBy, я получаю 3 таблицы в базе данных (другая таблица, которая содержит projectId и studentId), но я не понимаю, как это работает. Спасибо за помощь:)

1 Ответ

0 голосов
/ 27 апреля 2019

Вы можете взглянуть на https://docs.oracle.com/javaee/6/api/javax/persistence/OneToMany.html#mappedBy() для более подробной информации.

Поле, которому принадлежат отношения. Требуется, если отношения не являются однонаправленными.

Он говорит JPA обойти и выяснить, есть ли какое-либо свойство бина с именем student и использовать эту конфигурацию. В вашем коде он найдет конфигурацию в Project сущности.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...