У меня следующая структура
Магазин
Фальца
RebateMetadata
RebateCommission
Итак, отношение такое -
Store -> Rebate - отношение один ко многим
Rebate -> RebateMetadata - это сопоставление «один к одному»
Rebate -> RebateCommission - это взаимно-однозначное сопоставление
Мой запрос - загрузить все магазины. И с этим, загрузить все бонусы и метаданные и комиссии.
Я использую HQL:
Выбрать магазин из магазина как магазин;
Я ожидаю, что весь граф будет загружен как можно меньше SQL-запросов. Чтобы предотвратить проблему выбора n + 1, я использую выборку подвыбора между Store-> Rebate.
Однако, чтобы получить RebateMetadata и RebateCommission, я вижу запуск нескольких отдельных выборок (с объединениями). Что я должен сделать, чтобы минимизировать это?
Кроме того, у меня включен кэш 2-го уровня, но QueryCache выключен.