Действует ли Liquibase доступа к Java.sql.Connection для пользовательских задач
-
12-11-2019 - |
Вопрос
Есть ли способ наличия Liquibase вызова пользовательского класса / плагина Java и предоставила этот класс доступа к базовому соединению для внесения изменений данных.Я выглядел, но только это только
Так что наших шагов обновлений требуют обширных манипуляций данных, которые намного легче делать и отладки в коде, чем использование SQL.Поэтому я хотел бы написать задачи, которые могут извлечь, преобразовывать и сохранять данные.Это возможно в рамках Liquibale?
Решение
Если вы используете подкласс изменений с использованием рамок расширения (LiquibasaSe.org/extensions). Метод Generatestatements () пропускается объектом базы данных. Изменение выполняется против.Вызов
((JdbcConnection) Database.getConnection()).getUnderlyingConnection()
.
вернет использованный java.sql.Connection.
Если вы используете интерфейс CustomTaskChange, выполняемый метод execute (), пропускается тот же объект базы данных, от которого вы можете получить соединение.