Pregunta

La semana pasada Leí sobre el inicio rápido de Liquibase y todos los tutoriales relacionados, pero siento que no tengo la deriva completa de usarlo por un cambio consecutivo en la base de datos y tengo algunas preguntas que aún se abren.

Estoy desarrollando una aplicación en NetBeans usando Maven con 3 módulos: DBUNIT MÓDULO, MÓDULO DE SERVICIO Y EL MODULO DE SOBREAPT. A. Puede haber adivinado que DBUNIT realiza la base de datos, el servicio está en la parte superior y la WebApp utiliza la Servicios. Así que el padre POM tiene la declaración de todos los groupids, artifactidas y versiones para todos los frascos y complementos.

Logro para generar el archivo Changelog de la línea de comandos ya que la DB ya existe y suponiendo que configuro todo correctamente usando Liquibase Maven Plugin:

Pregunta 1 : ¿Cuál será el objetivo de Liquibase desde ahora mismo que estoy haciendo algún cambio de base de datos ahora mismo?

Pregunta 2 : Si quiero agregar, por ejemplo, una nueva tabla a la base de datos, agregaré el nuevo conjunto de cambios al mismo archivo ChangElog o tengo que crear un nuevo archivo Changelog.xml ?

Pregunta 3 : Creo que cuando la ejecutiva DBUNIT ejecutará el conjunto de cambios, pero es necesario agregar el complemento al módulo WebApp también (tal vez para ejecutar el objetivo de Liquibase antes de la implementación con el complemento de carga) ¿O la DBUNIT se hará cargo de eso?

Pregunta 4 : Lo que ayuda exactamente a la subversión Mantener a los estados del registro de cambios (asumiendo que solo hay una cohela de cambio de cambio a la pregunta 2)

Gracias por leer esto y para usted ayuda.

¿Fue útil?

Solución

  1. ver http://www.liquibase.org/documentation/maven

    Por lo tanto, debe atar su ejecución de Liquibase a una fase como

    <phase>process-resources</phase>
    

    Pero también uso un ejecutor de primavera. Por lo tanto, cada vez que se inicia mi aplicación, comienza a un ejecutor Liquibase para ejecutar faltantes de cambios de cambios en la base de datos. Es agradable, porque cuando está listo con su trabajo y sus pruebas, Liquibase ha actualizado su base de datos DEV pero no su base de datos de producción. Pero cuando instala su guerra y inicie su WebApp, Liquibase lo maneja automáticamente para llevar su base de datos al estado actual. Así que no tiene que recordar hacer algunas cosas adicionales antes de implementar su nueva versión.

    1. Mantenga su changelog.xml con incluye los archivos de Changelog como este

      http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-1.9.xsd ">
      Cuando desee una tabla nueva, agregue un archivo Changelog-0002.xml y haga referencia a su maestro Changelog.xml

    2. Ver respuesta 1. También me pondría en su módulo de WebApp.

    3. Debería tener muchos archivos de Changelog. Así que esta pregunta no es aplicable.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top