Конфигурирование hibernate.reveng.xml для обнаружения последовательности генератор PK с hibernate3-maven-plugin и Postgre

есть ли способ настроить 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 синтаксически корректный.

Какие-либо подсказки?

5
задан mmm 7 June 2010 в 17:13
поделиться

2 ответа

Ниже кода, который в конечном итоге сработал для меня. Мне просто нужно было передать имя таблицы 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>
5
ответ дан 14 December 2019 в 04:30
поделиться

Не могли бы вы попробовать с ... (это то, что я вижу в документации или в этой ветке ). Примерно так:

<?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>
3
ответ дан 14 December 2019 в 04:30
поделиться
Другие вопросы по тегам:

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