Spring中Bean的扫描与常见
2023-07-03 12:24:08 3 举报
AI智能生成
Spring中Bean的扫描与常见
作者其他创作
大纲/内容
扫描
1.通过配置类的@ComponentScan注解获取需要扫描的包路径
2.获取AppClassLoader,调用getResource()方法获取URL,获取文件目录,遍历所有文件
3.获取加@Component注解的Bean,生成BeanDefinition对象解析@Scope注解,生成好的BeanDefinition对象存入beanDefinitionMap
4.获取BeanPostProcessor接口的实现类,存入beanPostProcessorList
创建单例Bean
1.遍历beanDefinitionMap,获取单例Bean
2.通过BeanDefinition的getType方法获取Class类对象
3.根据获取的Class对象,获取无参构造方法对象,newInstance()
4.获取带@Autowired注解的属性,调用getBean方法获取对象
5.对实现initializingBean的接口,执行初始化方法
6.获取BeanPostProcessor接口的实现类,遍历执行初始化前或者初始化后方法
7.在初始化前执行Aware回调
0 条评论
下一页