Spring 在多个@Configuration 文件中配置同一个bean

Spring configure the same bean at multiple @Configuration files

当我需要在我的核心模块@Configuration 文件中配置一些bean,然后在顶级模块@Configuration 文件中完成核心模块bean 的配置时,我遇到了这种情况。 (请看下面的代码

如何在facade的@Configuration文件中完成core-module的SchedulerFactoryBean的设置?

核心模块调度程序配置:

@Configuration
public class BaseSchedulerConfig {

    @Bean
    public SchedulerFactoryBean schedulerFactoryBean(DataSource dataSource,
                                                     JobFactory jobFactory,
                                                     @Qualifier("baseReusableJob") JobDetail baseReusableJob) {
        SchedulerFactoryBean factory = new SchedulerFactoryBean();
        factory.setJobDetails(baseReusableJob);
        return factory;
    }
}

Facade 模块调度程序配置:

@Configuration
@Import(BaseSchedulerConfig.class)
public class FacadeSchedulerConfig {

    @Autowire
    public SchedulerFactoryBean schedulerFactoryBean;

    // Question: which annotation use to inject module (facade) specific jobs into SchedulerFactoryBean
    public void lookup(@Qualifier("facadeSpecificJob") JobDetail facadeSpecificJob) {
        schedulerFactoryBean.setJobDetails(facadeSpecificJob);
    }
}

您正在寻找 @PostConstruct

The JSR-250 @PostConstruct and @PreDestroy annotations are generally considered best practice for receiving lifecycle callbacks in a modern Spring application.

按预期使用@Configuration。

What is the expected behaviour of @PostConstruct in @Configuration classes?