管理SPI体系结构的Flyway迁移

时间:2019-09-24 15:02:04

标签: spring-boot flyway

我正在构建一个使用Flyway(至少当前)的基于SPI的Spring Boot Web应用程序。我无法想象SPI实现如何使用flyway的迁移来管理自己的表。

简化的架构看起来像这样:

project-parent
|-project-core (with SPI interface)
|-project-web (loads SPIs via ServiceLoader)

project-spi-impl (depends on project-core)

project-spi-impl将在启动时使用ServiceLoader进程加载到project-web。

这是问题所在:我希望Project-Web能够使用Flyway来管理数据库逻辑,例如添加用户表等。project-spi-impl 需要管理数据库表,因此我想继续使用飞行路线技师。据我了解,project-spi-impl和project-web必须在其版本控制上保持同步,以使飞行路线愉快。例如

project-web
\V001_UsersTable.sql
\V002_RolesTable.sql
\V004_DataTable.sql

project-spi-impl
\V003_SpiTable.sql

我想训练飞行器以每spi的方式进行迁移,以允许此排序:

project-web
\V001_UsersTable.sql
\V002_RolesTable.sql
\V003_DataTable.sql

project-spi-impl
\V001_SpiTable.sql

这可能吗?

0 个答案:

没有答案