есть ли способ настроить hibernate3-maven-plugin
так, чтобы генератор последовательности был обнаружен для a primary-key
? Я использую подход снизу вверх для hibernate
конфигурация (что означает позволять hibernate-tools
генерируйте быть в спящем режиме конфигурацию с помощью a jdbc-connection
для Вас через reverse-engineering
на существующей схеме базы данных). Я считал это, но также и это уже (те два могут быть не связаны, но могут также оставить подсказку). Мой hibernate.reveng.xml
следующее:
ORDERS_ORDER_ID_seq
И я ожидаю, что это генерирует Orders.hbm.xml
файл как это:
ORDERS_ORDER_ID_seq
...
... но получение этого вместо этого:
...
Я знаю мой hibernate.reveng.xml
читается hibernate3-maven-plugin
, поскольку я сталкиваюсь с ошибками знатока каждый раз, когда синтаксические ошибки появляются в файле, таким образом, pom.xml
кажется, корректен и hibernate.reveng.xml
синтаксически корректный.
Какие-либо подсказки?
Ниже кода, который в конечном итоге сработал для меня. Мне просто нужно было передать имя таблицы order
в нижнем регистре (я использовал заглавные буквы в моем DDL, поэтому я на самом деле не понимаю, но это работает). Также необходимо предоставить атрибут схемы
.
является необязательным (если вы следуете соглашению об именах в спящем режиме).
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-reverse-engineering
SYSTEM "http://hibernate.sourceforge.net/hibernate-reverse-engineering-3.0.dtd" >
<hibernate-reverse-engineering>
<table name="orders" schema="public">
<primary-key>
<!-- setting up a specific id generator for a table -->
<generator class="sequence">
<param name="sequence">ORDERS_ORDER_ID_seq</param>
</generator>
</primary-key>
</table>
</hibernate-reverse-engineering>
Не могли бы вы попробовать с ...
(это то, что я вижу в документации или в этой ветке ). Примерно так:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-reverse-engineering
SYSTEM "http://hibernate.sourceforge.net/hibernate-reverse-engineering-3.0.dtd" >
<hibernate-reverse-engineering>
<table name="ORDERS">
<primary-key>
<!-- setting up a specific id generator for a table -->
<generator class="sequence">
<param name="table">ORDERS_ORDER_ID_seq</param>
</generator>
<key-column name="ORDER_ID"/>
</primary-key>
</table>
</hibernate-reverse-engineering>