Показаны сообщения с ярлыком liquibase. Показать все сообщения
Показаны сообщения с ярлыком liquibase. Показать все сообщения

пятница, 4 октября 2013 г.

liquibase + spring

Для удобства интеграции с spring-фреймоворком есть специальная оболочка liquibase.integration.spring.SpringLiquibase (с версии 3.0.5).
Пример бина:
    <bean id="liquibase" class="liquibase.integration.spring.SpringLiquibase">
        <property name="dataSource" ref="dataSource"/>
        <property name="changeLog" value="classpath:changelog.xml"/>
        <property name="contexts" value="test, production"/>
    </bean>
При старте конфигурации с таким бином liquibase-скрипт будет автоматически загружен из changelog.xml, а затем применён к хранилищу javax.sql.DataSource dataSource.
 
Опциональные параметры можно посмотреть в javadoc'е (http://www.liquibase.org/javadoc/liquibase/integration/spring/SpringLiquibase.html).

пятница, 17 августа 2012 г.

liquibase servlet listener: пример и настройка

liquibase может быть запущен (среди прочих способов) с помощью servlet listener. А значит, можно автоматизировать запуск liquibase и приурочить проверку/обновление БД к моменту деплоя приложения. Далее в посте рассматривается пример того, как "подружить" liquibase и сервер приложений jboss, настроить эту связку и сделать так, чтобы миграция выполнялась при запуске приложения.

четверг, 16 августа 2012 г.

Работа с liquibase

Программы и приложения обладают одним интересным свойством склонностью к эволюционированию: появляются новые возможности, старые и ненужные фичи исчезают, меняются внешние интерфейсы и внутренние взаимосвязи. И если программа или приложение использует базу данных, то этот процесс неизменно сопровождается развитием и БД.
Для разработчиков развитие БД выливается в задачи по рефакторингу модели данных, отслеживанию изменений, синхронному обновлению баз и поддержанию совместимости версий; особенно это касается "боевых" приложений, для которых ошибка может стоит дорого. Как решать возникающие задачи? Можно полагаться на память. Можно связаться с текстовыми файлами, чтобы помечать в них, когда и какие поля в БД были изменены, и что нужно сделать на сервере БД заказчика, чтобы обновление версии программы прошло без проблем.
Механизмом для оптимизации этого сложного, но неизбежного процесса является инструмент liquibase, лозунг которого "Database Change Management" управление изменениями баз данных. Полное описание функциональности можно получить на сайте проекта; далее же в посте описываются некоторые конкретные возможности и процедуры использования данного инструмента с небольшими примерами.