Я использую HQL-именованные запросы (которые определены в файлах XML) для запроса моей базы данных с помощью Hibernate. Некоторые из запросов довольно сложны, и я нахожу, что я копирую несколько важных частей одного запроса в другой, похожий.Повторное использование HQL с именами фрагментов запросов
Мне было интересно, можно ли вообще определить общие части в «именованном фрагменте запроса» и повторно использовать этот фрагмент во всех моих запросах?
Я не хочу использовать критерии API, кстати, потому что мне удобнее формулировать запросы в XML. Некоторые из них уже довольно монстры, и реализация их с помощью API сделает их еще более нечитаемыми.
Это была бы возможность, но звучит как взлома. Нет поддержки на языке HQL для этого, например, в MyBatis? –
@StefanHaberl Я не знаком с MyBatis. Как уже упоминалось выше, это зависит от реализации, специфичного для провайдера API. Но вы используете Hibernate, попробовали ли вы это. –
Я предполагаю, что он будет работать с Hibernate в порядке. Просто я не хочу бороться с Hibernate, сгенерированным SQL в моем коде. Я хочу построить HQL-запросы из именованных блоков запроса запроса в XML и хочу сделать этот SQL-диалект независимым. –