Я пытаюсь использовать Liquibase версии 3.6 для поддержки изменений версии базы данных.Я могу выполнить изменения версии базы данных, когда мне нужно выполнить изменения одного файла.
Я использую приведенный ниже код для успешного выполнения изменений версии, но я намерен динамически выполнять журналы изменений из папки, а неотдельный файл.Я использую только Java для всей конфигурации Liquibase
@Startup
@Singleton
@TransactionManagement(TransactionManagementType.BEAN)
public class InitializerBean {
@Resource(mappedName = "java:/M2M_RESOURCES")
private DataSource ds;
@PostConstruct
protected void bootstrap() {
ResourceAccessor resourceAccessor = new ClassLoaderResourceAccessor(getClass().getClassLoader());
try (Connection connection = ds.getConnection()) {
JdbcConnection jdbcConnection = new JdbcConnection(connection);
Database db = DatabaseFactory.getInstance().findCorrectDatabaseImplementation(jdbcConnection);
Liquibase liquiBase = new Liquibase("data/liquibase/", resourceAccessor, db);
liquiBase.update("Development");
} catch (SQLException | LiquibaseException e) {
}
}
}
Когда первым параметром класса Liquibase является отдельный файл, liquibase может выполнять изменения, но когда я собираюсь выполнить все файлы из одной папки, это не так.возможность отслеживать и выполнять изменения.
Я использую JDK 1.8 и файл в data / liquibase / является dbChangelog.sql и dbChangelog_2.sq.Этот весь код развернут на Wildfly 10 как часть ушного архива