| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java EE (J2EE) и Spring > Hibernate + связи |
| Автор: omka 28.3.2008, 14:17 |
| подскажите, можно ли в Хибере сделать так что бы 2 таблицы связывались с 3-й по одному столбцу. Другими словами хочу что бы одна таблица имела 1 столбец в котором хранилась бы информация о двух других таблицах. проблема вытекла из того что что есть два класса, которые инкапсулируют в себе 2 разных типа вопроса и есть ещё один класс который инкапсулирует в себе тип ответа. их нужно между собой связать через одно поле question в классе Answer. |
| Автор: fixxer 28.3.2008, 14:38 |
| непонятно. на пальцах (табличках) покажи. |
| Автор: omka 28.3.2008, 15:16 |
| лучше на классах: есть абстрактный класс Question, у него 6 подклассов, 2 из которых SingleChoiceQuestion и MultiSelectQuestion. У этих подклассов есть поле Set<SelectAnswer> possibleAnswers. есть абстрактный класс AnswerVariant, у него 4 подклассa, 1 из которых SelectAnswer. У класса AnswerVariant есть поле Question question. Как мне сделать связь в маппинге? |
| Автор: iluvatar 28.3.2008, 16:34 |
| А какая структура таблиц? Или ее еще нет? |
| Автор: omka 28.3.2008, 16:38 |
| Совсем забыл. Дочерние классы мапились как joined-subclass. |
| Автор: iluvatar 31.3.2008, 08:06 |
| Нарисуй структуру таблиц - плясать-то надо от них. Какие есть таблицы, с какими полями? Или структура их четко еще не поределена и надо их создать? |
| Автор: omka 31.3.2008, 14:31 | ||||
| изменил маппинги (joined-subklass на subclass), но от этого проблемма не решилась. Таблицы: ![]() Получается ссылка на одно поле QUESTION_ID. Вот куски маппингов: Question.hbm.xml
Answer.hbm.xml
|