我们将按照错误消息的建议删除Flyway对象上已弃用的配置设置器:
Flyway对象的直接配置已被弃用,并且将 在Flyway 6.0中删除。改用Flyway.configure()。
文档说要流畅使用配置:
Flyway flyway = Flyway.configure().dataSource(url, user, password).load();
flyway.migrate();
终止的load()方法创建Flyway对象。
但是,我们在循环或条件下的不同地方使用Flyway对象的相同实例,例如,作用于不同主机上的多个数据库。创建对象后如何调整配置?
Flyway flyway = Flyway.configure().dataSource(url, user, password).load();
if (some-condition)
{
flyway.setSchemas(schemaName)
}
我们将抓取配置并进行调整吗?是否需要再次调用load()?
if (some-condition)
{
flyway.getConfiguration().schemas(schemaName)
}
但是,如果这样做,是要更新飞行路线对象的配置还是更新其配置的副本?
org.flywaydb.core.Flyway:167似乎说它正在创建副本:
public Configuration getConfiguration() {
return new ClassicConfiguration(configuration);
}
那么我们的Flyway对象实例将如何获取我们的更改?