Отображение много-много позволяет определить ассоциацию нескольких величин с несколькими величинами. Отображение много-много имеет две стороны: владеющую и подчиненную. На владеющей стороне необходимо указать соединение таблиц. Для двунаправленных отображений владеющей может быть любая сторона.
В панели Структура JPA выберите отображаемое поле.
Щелкните правой кнопкой на поле и выберите Отобразить как > Много-много. В панели Сведения JPA (атрибуты) будут показаны свойства этого поля.
Заполните в этой таблице поля общей информации в панели Сведения JPA.
Свойство | Описание | По умолчанию |
---|---|---|
Гиперссылка Отображение сущности | Указывает, что отображение имеет тип Много-много.
Это поле соответствует аннотации |
Много-много |
Целевая сущность | Сущность, с которой связан данный атрибут. | null
Явным образом задавать целевую сущность не требуется, так как она может быть определена по типу связанного объекта. |
Извлечь | Определяет способ загрузки данных из базы данных. Дополнительная информация приведена в разделе Тип получения.
|
Медленный |
Отображено | Поле базы данных, которое владеет отношением. | |
Упорядочить по | Указывает режим упорядочения по умолчанию объектов, возвращенных запросом. Дополнительная информация приведена в разделе Упорядочить по.
|
Без упорядочения |
Заполните в этой таблице поля соединения таблиц в панели Сведения JPA.
Свойство | Описание | По умолчанию |
---|---|---|
Имя | Имя соединенной таблицы, которая содержит столбец внешнего ключа. | На владеющей стороне необходимо указать соединение таблиц.
По умолчанию это имя главных таблиц, связанных с сущностями. Символ для соединения - подчеркивание. |
Соединение столбцов | Выберите Переопределить значение по умолчанию, затем выберите Добавить, Изменить или Удалить для соединения столбцов. | По умолчанию это имя главных таблиц, связанных с сущностями. Символ для соединения - подчеркивание. |
Обратное соединение столбцов | Выберите Переопределить значение по умолчанию, затем выберите Добавить, Изменить или Удалить для соединения столбцов. | По умолчанию отображение имеет единичное соединение. |
Для добавления соединения или обратного соединения столбцов нажмите кнопку Добавить.
Для редактирования существующего соединения или обратного соединения столбцов выберите поле и нажмите кнопку Изменить.
В это поле будет добавлена следующая аннотация:
@JoinTable(joinColumns=@JoinColumn(name="<JOIN_COLUMN>"), name = "<JOIN_TABLE_NAME>") @ManyToMany(cascade=CascadeType.<CASCADE_TYPE>, fetch=FetchType.<FETCH_TYPE>, targetEntity=<TARGET_ENTITY>, mappedBy = "<MAPPED_BY>") @OrderBy("<ORDER_BY>")