本文主要是介绍springboot控制bean的创建顺序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
《springboot控制bean的创建顺序》本文主要介绍了spring-boot控制bean的创建顺序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随...
1、order注解(不一定有效)
org.springframework.core.annotation.Order
2、dependsOn注解(有效)
org.springframework.context.annotation.DependsOn
3、提前将bean注册为BeanDefinition
1、实现BeanDefinitionRegistryPostProcessor,将userService注册
public class MyBeanDefinitionRegistryPostProcessor implements BeanDefinitionRegistryPostProcessor {
@Override
public void postProcessBeanDefinitionRegistry(BeanDefinitionRe编程gistry registry) throws BeansException {
python AbstractBeanDefinition beanDefinition = BeanDefinitionBuilder.genericBeanDefinition().getBeanDefinition();
beanDefinition.setBeanClass(UserService.class);
registry.registerBeanDefinition("userService", beanDefinition);
}
}2、加入上下文中
public class MyApplicationContextInitializer implements ApplicationContextInitializer {
@Override
public vChina编程oid initialize(ConfigurableApplicationContext applicationContext) {
applicationContext.addBeanFactoryPostProcessor(new MyBeanDefinitionRegistryPostProcessor());
}
}3、配置扫描生效,在resources下创建MATE-INF文件夹,在MATE-INF文件夹下创建spring.factories文件,然后加入下面的配置
org.springframework.context.ApplicationCophpntextInitializer=com.example.springbootshutdown.MyApplicationContextInitializer org.springframework.beans.factory.supporwww.chinasem.cnt.BeanDefinitionRegistryPostProcessor
到此这篇关于springboot控制bean的创建顺序的文章就介绍到这了,更多相关springboot bean创建顺序内容请搜索China编程(www.chinasem.cn)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程China编程(www.chinasem.cn)!
这篇关于springboot控制bean的创建顺序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!