@Muiron

Как настроить связь Many To Many в пределах одной сущности в Spring Jpa?

Здравствуйте.
Подозреваю что вопрос немного дурацкий, но все же.
Делаю сервер с использованием Spring 4.2.4 и Spring Data Jpa, модель - что-то вроде социальной сети, есть сущность (назовем условно "User"), нужно хранить данные на кого этот пользователь подписался, ну и соответственно - кто подписан на этого пользователя. То есть, налицо связь Many To Many, но одна проблема - с обеих ее сторон находится одна и та же сущность.

Думаю записать это в коде так:
@ManyToMany
    @JoinTable(name="following_follower",
            joinColumns = @JoinColumn(name="follower_id", referencedColumnName="id"),
            inverseJoinColumns = @JoinColumn(name="following_id", referencedColumnName="id"))
    private Set<User> following;

    @ManyToMany(fetch = FetchType.LAZY, mappedBy = "following")
    private Set<User> followers;


Но смущает, не будет ли проблем с обработкой такой связи.
Или лучше пойти другим путем: убрать эту связь из Jpa вообще и написать связующую таблицу и репозиторий для нее вручную?
  • Вопрос задан
  • 1040 просмотров
Пригласить эксперта
Ответы на вопрос 2
@goshan_p
Не скажу как это реализовывается на Java. Но такая модель БД существует точно.
Ответ написан
Комментировать
@kosmom
А почему смущает? Класс-сущность может быть одинаковой, должно работать.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы