У нас есть существующая и работающая база данных, созданная из файлов отображения hbm.
Мы хотим создать несколько новых таблиц для дополнительной функции.
Один из вариантов заключается в том, что эти новые таблицы всегда существуют, но мы бы предпочли, чтобы таблицы и POJO создавались только по запросу.
Моя проблема заключается в том, что эти таблицы / POJO зависят от существующих таблиц / POJO. Я создал файл отображения, но я могу заставить его работать, только если он создает команды создания / удаления для существующих таблиц, а также для новых,
вместе со своими POJO.
Можно ли избежать появления этой существующей таблицы / POJO для группы в сценарии создания.
В приведенном ниже примере Group представляет собой существующую таблицу / POJO.
<id name="id" type="java.lang.Long">
<column name="ID" not-null="true" />
</id>
<many-to-one name="group"
class="uk.co.foo.domain.dfwv.Group"
foreign-key="GROUP_FK" lazy="false" not-found="ignore">
<meta attribute="use-in-tostring">false</meta>
<column name="GROUP_NAME"
not-null="true" />
</many-to-one>
</class>
Цель для создания муравья приведена ниже и работает, только если перечислены зависимые объекты:
<fileset dir="${dfwv.mappings.dir}">
<include name="**/groups.hbm.xml" />
</fileset>
</configuration>
<hbmtemplate exporterclass="uk.co.foo.hibernateutils.tools.Exporter" templateprefix="config/foopojo/" template="config/foopojo/Pojo.ftl">
<property key="jdk5" value="true" />
<property key="ejb3" value="false" />
</hbmtemplate>
</hibernatetool>
</target>
Без зависимой ссылки на группу я получаю ошибку:
СТРОИТЬ НЕУДАЧИ
C: \ projects \ foo \ db-build.xml: 187: текст схемы не выполнен: ассоциация из таблицы DISCON_TEST ссылается на не отображенный класс: uk.co.foo.domain.dfwv.Group
Версия Hibernate: 3.1.2