Hibernate Mapping One-to-Many, странный пример - PullRequest
3 голосов
/ 17 января 2011

Мы пытаемся построить отношение «один ко многим». Пытаясь понять, как это работает, мы наткнулись на этот пример , который показывает, как это сделать.

В примере показана разумная диаграмма ER, но, вообще говоря, в отношении «один ко многим» не требуется вспомогательная таблица. Мы могли бы вставить столбец StudentId в таблицу Phone и добиться связывания, объединив две таблицы через этот идентификатор. В этом примере, напротив, им нужно объединить три таблицы.

Нам интересно, оправдано ли такое поведение некой хорошей практикой, которая делает управление Hibernate простым, или это просто ошибка парня, написавшего статью.

Есть мысли?

1 Ответ

2 голосов
/ 17 января 2011

Я нашел ответ, и кажется, что это своего рода обходной путь ... http://en.wikibooks.org/wiki/Java_Persistence/OneToMany#Join_Table

Обычно лучше определить обратную ссылку ManyToOne в Java, если вы не можетеили не хотите этого делать, тогда вы можете использовать промежуточную таблицу соединений для хранения отношений.Это похоже на отношение ManyToMany, но если вы добавите уникальное ограничение к целевому внешнему ключу, вы можете принудительно установить, что это OneToMany.

...