Файлы отображения Hibernate из запросов SQL
После поиска по SO и спящим документам я не могу найти ответ на свои вопросы (?). Каждый ответ будет полезен для моей проблемы, вот она.
Я новичок в hibernate hbm.xml, и моя задача - выводить действительно большие и сложные запросы, включающие множество таблиц, объединений, подсчетов и т. Д., С помощью hbm.xml.
Код HQL уже готов и работает, и у меня нет доступа к нему, если только я не запрашиваю новые функции / методы, я могу напечатать все таблицы, используя отображение hbm.xml для каждой, например:
table1.hbm.xml:
<?xml version = "1.0" encoding = "UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC '-//Hibernate/Hibernate Mapping DTD 3.0//EN' 'http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd'>
<hibernate-mapping>
<class name="authorization.model.table1" table="table1">
<composite-id>
<key-property name="Id" type="long" column="Id" />
<key-property name="Sys" type="string" column="Sys" />
</composite-id>
<property name="Cod" column="Cod" type="long" />
</class>
</hibernate-mapping>
в сочетании с моим выходным кодом будет напечатан столбец с id, sys и cod из таблицы 1, который находится на БД. Пока все хорошо, я тоже могу напечатать много к одному, комбинируя столбцы из двух разных таблиц и напечатать, например, описание (столбец из таблицы 2 и PK из таблицы 1).
Проблема в том, что мне нужно объединить таблицы и распечатать более сложные запросы, используя различные таблицы и связи между ними.
Мой вопрос: могу ли я использовать уже выполненный запрос SQL и сгенерировать файл hbm?
Нужен ли мне файл hbm, например, чтобы оставить таблицы соединений, а затем вызвать этот файл (результат).
Извините за смутный вопрос, я тоже запутался.
Я могу опубликовать один из запросов, которые я хочу / нужно сопоставить, с отображением всех таблиц.
1 ответ
Хорошо, я нашел решение, для кого-то еще, имеющего эту проблему, я рекомендую вам создать представление базы данных из всех сложных запросов, а затем отобразить столбцы результатов и типы из этого представления в hibernate hbm.xml.
При этом нет необходимости в сложных количествах элементов в файлах.hbm.