Есть ли способ использовать именованные запросы Hibernate в Grails, используя HQL?
Я читал о них в книге Использование Hibernate и задавался вопросом, существует ли способчтобы использовать их в Grails.
Именованные запросы включены вместе с отображениями классов в <class-name>.hbm.xml
файлы сопоставления, например, так:
<query name="com.oreilly.hh.tracksNoLongerThan">
<![CDATA[
from Track as track
where track.playTime <= :length
]>
</query>
Теперь я уверен, что <class-name>.hbm.xml
файл отображения hibernate может быть включен и интегрирован в конфигурацию Grails GORM как здесь указано , что hibernate.cfg.xml
, который включает в себя файл отображения hibernate , можетиспользуется в Grails.
В старых Hibernate и Java к нему можно получить доступ следующим образом:
...
Query query = session.getNamedQuery(
"com.oreilly.hh.tracksNoLongerThan");
query.setTime("length", length);
return query.list();
...
Но как можно получить доступ к этим именованным запросам HQL из Grails?
Причина, по которой я спрашиваю, состоит в том, что я хотел бы иметь возможность взять унаследованную базу данных и сопоставить ее с некоторыми объектами для использования в Grails, а также сохранить именованные запросы вместе с сопоставлениями.