控制Bean的顺序-@DependsOn

  1. 在类里,@Bean书写的顺序决定了Bean的初始化顺序。son()在father()的前面,先初始化。
    @Bean
    Object son(){
        System.out.println("Bean son create.");
        return "son ";
    }

    @Bean
    static Object father(){
        System.out.println("Bean father create.");
        return "father";
    }
  1. 使用@DependsOn。@DependsOn强调的是Bean与Bean之间的依赖关系。如:A @DependsOn B表示,只有当B初始化完成了才会去初始化A。这里所谓的Bean可以是任何Bean:包括@Bean、@Component、@Configuration等一切形式
    @Bean
    @DependsOn("father")
    Object son(){
        System.out.println("Bean son create.");
        return "son";
    }

    @Bean
    static Object father(){
        System.out.println("Bean father create.");
        return "father";
    }

你可能感兴趣的:(控制Bean的顺序-@DependsOn)