Выполнение в спящем режиме поколение аннотации инструмента без атрибута “каталога”

Возможно prettyPrintQuery?

7
задан Titi Wangsa bin Damhore 2 August 2009 в 02:37
поделиться

3 ответа

Вам необходимо выполнить 3 шага -

1) В hibernate.cfg.xml добавьте это свойство

hibernate.default_catalog = MyDatabaseName

(как указано в вышеприведенной записи)

2) В hibernate.reveng. xml, добавьте все фильтры таблицы, подобные этому

table-filter match-name="MyTableName"

(только это, здесь нет названия каталога)

3) Регенерируйте код спячки

Вы не увидите названия каталога ни в одном из файлов *.hbm.xml.

Я использовал Eclipse Galileo и Hibernate-3.2.4.GA.

.
7
ответ дан 7 December 2019 в 05:26
поделиться

В генерации есть настройка, которая сообщает, какие таблицы помещать в какой каталог.

Вы можете указать каталог вручную (в файле Reveng, <таблица> ), или программно (в вашем пользовательском классе ReverseEngineeringStrategy, если я хорошо помню).

Кроме того, мне недавно пришлось изменить шаблоны генерации.

См. Справочную документацию:

Извините, можно было бы уточнить, но у меня сейчас нет доступа к моему рабочему компьютеру.

1
ответ дан 7 December 2019 в 05:26
поделиться

Атрибут catalog является атрибутом "соединения" и должен быть указан в конфигурационном файле "соединения" hibernate.cfg.xml и НЕ в конфигурационном файле "данных" *.hbm.xml.

Я генерирую код hibernate через задачу ant и ставлю эту задачу replace после регенерации (заменить schema-name на вашу базу данных).

<replace dir='../src' token='catalog="schema-name"' value=''>

Таким образом, после генерации каталог атрибутов был удален.

Это обходной путь, но сгенерированный код работает в моей среде разработки и в производственной среде с другим schema-name.

0
ответ дан 7 December 2019 в 05:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: