powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Hibernate many-to-many
9 сообщений из 9, страница 1 из 1
Hibernate many-to-many
    #38861565
Валисий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго времени суток!
Прошу у знающих людей совета. Ситуация такая: есть 3 таблицы в БД.
Таблица Product(ID, ProdName, Price) - таблица товаров с ИД, наименованием, ценой.
Таблица Supplier(ID, SuppName, Bonus) - таблица поставщиков с ИД, наименованием, скидкой.
Таблица Supplies(ID, Prod_ID, Supp_ID, Count, TotalPrice) - таблица поставок (ИД поставки, ИД поставщика, ИД товара, количество единиц товара, общая цена).
Таблицы Product, Supplier связаны отношением многие-ко-многим. Ассоциативная сущность - Supplies. Она имеет свой уникальный ИД, потому что возможны ситуации, когда поставляется один и тот же товар от одного и того же поставщика несколько раз.
Суть вопроса: мне нужно все это дело "смаппить" в Java-классы. Я понимаю, что для товаров и поставщиков мне однозначно требуется создать отдельные классы Java. А должен ли я создавать отдельный Java-класс для поставок (Supplies)? И как мне в классах Product, Supplier (с использованием аннотаций), указать связь? Я уже несколько статей читал на хабре и не только, но там везде ситуация, когда ассоциативная таблица хранит только ID основных таблиц.
Помогите, пожалуйста - у меня пока что разумных идей нет.
...
Рейтинг: 0 / 0
Hibernate many-to-many
    #38861689
Музаффар
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Валисий,

прошу прошение если что то не правильно понял, у Вас ER - диаграмма примерно так получился?
...
Рейтинг: 0 / 0
Hibernate many-to-many
    #38861695
Музаффар
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если да, то да наверное Вам придется создать ещё один класс и на нем будет
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
.......
    @ManyToOne
    @JoinColumn(name = "ID1")
    private T1 t1;
    @ManyToOne
    @JoinColumn(name = "ID2")
    private T2 t2;
.......



может я ошибаюсь, если что исправьте пожалуйста! :)
...
Рейтинг: 0 / 0
Hibernate many-to-many
    #38861761
Валисий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Музаффар,
извините, я в ER-диаграммах слабо понимаю, больше в UML) на первый взгляд все так. спасибо за ответ, буду пробовать.
...
Рейтинг: 0 / 0
Hibernate many-to-many
    #38861763
Валисий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Единственный момент: в таблице Т1Т2 есть еще свой собственный ИД (свой первичный ключ, не составной).
...
Рейтинг: 0 / 0
Hibernate many-to-many
    #38861771
Музаффар
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Валисий,
ну если в UML, то наверное будет примерно вот так (могу ошибиться ):
...
Рейтинг: 0 / 0
Hibernate many-to-many
    #38861774
Музаффар
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВалисийЕдинственный момент: в таблице Т1Т2 есть еще свой собственный ИД (свой первичный ключ, не составной).

тогда добавляете еще:
Код: java
1.
2.
3.
    @Id
    @Column(nullable = false)
    private BigDecimal id1;



тоже...
...
Рейтинг: 0 / 0
Hibernate many-to-many
    #38861860
Валисий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, теперь все верно!
Спасибо, Вы прояснили ситуацию)
...
Рейтинг: 0 / 0
Hibernate many-to-many
    #38862039
Музаффар
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Валисий,

рад за Вас. :)
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Hibernate many-to-many
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]