Mongock spring-boot延迟bean创建直到Mongock完成

dgjrabp2  于 2023-06-21  发布在  Spring
关注(0)|答案(1)|浏览(148)

使用liquibase和Sping Boot ,当我有@Bean创建方法时,我可以执行@DependsOn("liquibase")等待。这允许我创建依赖于初始化数据的bean。
在蒙古我该怎么做?
我看到了这个问题,但是我需要在上下文中命令bean的创建,而不是强制上下文在完成之前等待mongock init的发生......

pod7payv

pod7payv1#

我们不能使用annotation configuration,我们需要使用Mongock初始化bean,并在@Bean中创建它,命名它,然后我们可以使用DependsOn('mongock')作为依赖bean:
请注意,这是Kotlin...

@Configuration
class MongockConfiguration {
    @Bean("mongock")
    fun mongockInitializingBeanRunner(
        mongoTemplate: MongoTemplate,
        applicationContext: ApplicationContext
    ): MongockInitializingBeanRunner {
        return MongockSpringboot.builder()
            .setDriver(SpringDataMongoV4Driver.withDefaultLock(mongoTemplate))
            .addMigrationScanPackage("come.package.changelog")
            .setSpringContext(applicationContext)
            .buildInitializingBeanRunner();
    }
}

相关问题