目录
1、获取Spring IOC容器(Aware)
2、动态注册bean信息(BeanFactoryPostProcessor)
3、动态修改bean信息(BeanFactoryPostProcessor)
4、获取Spring IOC容器所有bean信息(BeanFactoryPostProcessor)
5、为兼容不同SpringBoot 版本,以实现选择性加载bean(条件注解)
6、自定义工厂bean实例化(工厂Bean、AbstractFactoryBean)
7、Spring MVC 输出所有的URL信息(Spring MVC)
8、通过Spring事件机制完成服务启动后的信息整理(类似于Dubbo的服务暴露机制)
9、通过Spring事件机制获取HTTP请求调用详情
10、服务启动后的初始化任务CommandLineRunner
最后有相关知识点的详细说明推荐~
1、获取Spring IOC容器(Aware)
通过ApplicationContextAware实现,在bean实例化后,经过Aware扫描时,发现实现了ApplicationContextAware接口,就会调用setApplicationContext方法注入ApplicationContext对象,这也是非常经典的一种获取上下文的方法。
2、动态注册bean信息(BeanFactoryPostProcessor)
通过实现
BeanDefinitionRegistryPostProcessor接口完成bean的动态注入,而且图中的动态生成还相比一般的注册更加复杂,往其中添加了类似于@Value一般的属性值,尽管我们后续无任何操作,Spring在进行数据填充的时候还是成功的从Prop