JPA / Hibernate: ManyToMany удалить отношение в таблице Join

Каждая функция контекста выполнения в javascript имеет контекст контекста этот параметр , который задается:

  1. Как вызывается функция ( в том числе в качестве метода объекта, использование call и применяется , использование new )
  2. Использование связывания
  3. Лексически для функций стрелок (они принимают этот своего внешнего контекста выполнения)

Каким бы ни был этот контекст области видимости, ссылается на «this».

Вы можете изменить это значение для параметра этого контекста области , используя func.call, func.apply или func.bind.

По умолчанию и что сбивает с толку большинство новичков, когда вызывающий вызывающий вызов вызывается после того, как событие добавлено в элемент DOM, контекст области это значение функции является элементом DOM.

jQuery делает это тривиальным для изменения с помощью jQuery.proxy.

1
задан jdub 13 July 2018 в 17:02
поделиться

1 ответ

Это необычный дизайн, который, как я подозреваю, запутан Hibernate. Совместное использование единой таблицы соединений между несколькими отношениями Many-to-many не является хорошей конструкцией базы данных, для одной из них не может быть никаких внешних ключей / ссылочной целостности.

Во-вторых, Hibernate управляет отношениями, и поэтому имеет контроль над @JoinTable, я не знаю, как он обрабатывал бы множественные отношения сущностей, сопоставленные с одной и той же таблицей. Очевидно, что это не очень хорошо!

Самое простое решение (если вы в состоянии), было бы иметь 2 таблицы отображения. Один для отношения между Alpha-Alpha и другим между Alpha-Bravo.

2
ответ дан StuPointerException 17 August 2018 в 12:22
поделиться
  • 1
    И чтобы избежать сопоставления таблицы отношений как объекта, поскольку она уже отображается как таблица соединений. – JB Nizet 13 July 2018 в 17:18
  • 2
    Я полностью согласен. Сопоставление отношений с объектами обычно сопровождается кодом, который управляет отношениями вне Hibernate. – StuPointerException 13 July 2018 в 17:24
  • 3
    @StuPointerException Я полностью согласен с вами, весь дизайн базы данных беспорядок, и, на мой взгляд, нужно отказаться от поспешности! К сожалению, сейчас я застрял. Я думал, что, возможно, мой недостаток опыта в JPA / Hibernate был проблемой, но если консенсус в том, что это невозможно сделать должным образом, тогда я отвечу. – jdub 13 July 2018 в 17:28
  • 4
    @jdub Я чувствую вашу боль. Я не вижу ничего плохого в ваших аннотациях Hibernate. Если это утешение, я не думаю, что разделение таблицы соединений на 2 должно быть очень большой / рискованной задачей. При этом не может быть последним препятствием для преодоления, если остальная база данных соответствует аналогичным шаблонам. Удачи! – StuPointerException 13 July 2018 в 17:34
Другие вопросы по тегам:

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