У меня есть следующие объекты:Hibernate возвращающих несколько Внешние Сущности
- Survey
- Response
- ResponseQuestion
- Вопрос
Survey имеет связь один-к-одному с ответом , Response имеет один ко многим ассоциации с ResponseQuestion, которая имеет связь многие-к-одному обратно в ответ, и многие к одной ассоциации к вопросу
Я использую следующий запрос:
select r from Response r join fetch r.responseQuestion rq join fetch rq.question where r.survey.id = :survey_id
Получить ответ, соответствующий опросу. Я ожидаю одного объекта Response на внешнем слое, который имеет список из 5 объектов ResponseQuestion. Однако то, что я получаю, это список из 5 объектов Response, каждый из которых имеет 5 объектов ResponseQuestion.
Я не уверен, почему я получаю 5 объектов снаружи, все из которых указывают на один и тот же объект в памяти. В таблице ответов есть только 1 строка. 5 строк в таблице ResponseQuestion (все сопоставлены с одним ответом)
Может ли кто-нибудь объяснить, что я делаю неправильно?
Простое решение. Не знаю, как я это пропустил. Спасибо! –