Да, но Вы не несете расходы глобальных переменных, пока Вы не прекращаете работать в коде, который использует глобальные переменные, и начните писать что-то еще, что использует код, который использует глобальные переменные. Но стоимость все еще там.
, Другими словами, это - долгосрочная косвенная стоимость и как таковой, большинство людей думает, что это не плохо.
Типичная таблица для одного T1 и многих T2 должна иметь внешний ключ на T2, указывающий на T1. Таблица T1_T2 обычно не требуется.
Тогда структура JPA будет «один-ко-многим», возможно, двусторонней.
Могут быть некоторые договоренности, чтобы описываемая вами структура работала. Вы можете изменить T1_T2:
Это действительно то, что вы хотите?
Отредактировано : да, это то, что вы хотите; - )
Я сомневаюсь, что вы найдете много примеров в сети. У меня нет проверенного решения, но я бы попробовал что-нибудь в этом роде:
В справочной документации по аннотациям Hibernate см. «2.2.5.3.2.3. Однонаправленный с таблицей соединения», чтобы понять идею. Это выглядит так:
@Entity
public class Trainer {
@OneToMany
@JoinTable(
name="TrainedMonkeys",
joinColumns = @JoinColumn( name="trainer_id"),
inverseJoinColumns = @JoinColumn( name="monkey_id")
)
public Set<Monkey> getTrainedMonkeys() {
...
}