2016-08-02 21 views
0

Ich benutze DBReverseEngineering Plugin Handling existierte Datenbank. Diesmal muss ich die existierende db als sekundäre Datenquelle setzen, aber so kann das Plugin es nicht finden.Dose DB Reverse Engineering Plugin für Grails unterstützt sekundäre Datenquelle?

Ich versuche Umgebungseinstellung als eine Problemumgehung zu verwenden, wie folgt aus:

environments: 
    development: 
    dataSources: 
     dataSource: 
     url: xxxxxx 
     legacy01: 
     url: zzzzzz 
     legacy02: 
     url: wwwwww 
    test: 
... 
    production: 
... 
    reveng01: 
    dataSource: 
     url: zzzzzz 
    reveng02: 
    dataSource: 
     rul: wwwwww 



$ ./gradlew -Dgrails.env=reveng01 dbReverseEnginee 
$ ./gradlew -Dgrails.env=reveng02 dbReverseEnginee 

Aber es bedeutet noch habe ich Mapping in jeder erzeugten Domäne Klassen hinzuzufügen, einfach zu vergessen. Also, gibt es eine Möglichkeit, das Plugin mit einer sekundären Datenquelle (Legacy01/02 in diesem Fall) zu machen. Vielen Dank.

Antwort

1

Dies wird nicht unterstützt, und ich denke, dass ich das wahrscheinlich nicht hinzufügen würde (es sei denn, es gibt einen Wert, der über einen seltenen Anwendungsfall hinausgeht). Ich kann keine konkreten Details darüber wissen, wie Leute das Plugin benutzen, aber ich habe immer angenommen, dass es eher ein gelegentliches Dienstprogramm ist, im Gegensatz zu vielen Plugins, die laufen, wenn die App läuft. Es sollte wahrscheinlich nicht einmal ein Plugin sein, sondern eine kleine Desktop-App (z.B. Griffon oder JavaFX). Sobald Sie der vorhandenen Datenbank Domänenklassen zugeordnet haben, würde ich denken, dass es selten ist, das Reverse-Engineering-Skript erneut auszuführen, außer in seltenen Fällen.

Wenn Sie das Skript etwas regelmäßig ausführen, sollte es einfach genug sein, ein Shell-Skript oder eine Batch-Datei mit der richtigen Konfiguration zu erstellen und das zu verwenden, oder?