Ich benutze Autobase (die auf Liquibase aufgebaut ist), da es (das letzte Mal, wenn ich es überprüfte) Ihnen erlaubt, Ihre Migrationen automatisch zu überprüfen/anzuwenden, wenn die App startet. Mit dem Liquibase-Plugin muss ich das selbst im Servlet-Init-Code machen. Auf diese Weise können Sie Ihre Datenquelle auf dbCreate = none
einstellen und Autobase die DB in Form bringen lassen. Es bedeutet bedeutet, dass Sie jedes Mal eine Migration schreiben müssen, wenn Sie einer Domain-Klasse eine Eigenschaft hinzufügen, aber ich denke, das ist eine gute Sache, wie Sie darüber nachdenken, was das zugrunde liegende Feld eigentlich sein sollte Lassen Sie Hibernate es erraten.
Ich denke, einige der Autobase-Plugin (z. B. die groovy dsl) wird zurück auf das Liquibase-Plugin migriert, aber Sie müssten das überprüfen.
Der einzige Nachteil von Autobase ist der Mangel an guter Dokumentation. Es gibt einige, aber es ist nicht vollständig. Zum Glück ist die DSL die gleiche wie die XML-Liquibase-Tags, so dass Sie das meiste davon arbeiten können.
nur auf der Autobase Seite - es ist jetzt veraltet zugunsten von Liquibase –
Ich glaube nicht, Liquibase hat die Möglichkeit, die DB zu aktualisieren, wenn Ihre App startet, die eine wirklich gute Funktion ist .Ich würde immer noch Autobase verwenden, bis Migrationen Teil des Grails-Kerns sind (was für Grails 1.4 geplant ist). – leebutts
@leebutts - Zum jetzigen Zeitpunkt unterstützt das dbMigrations-Plugin (der Nachfolger des Liquibase-Plugins) das Aktualisieren der Datenbank beim Start der Anwendung. – cdeszaq