ApplicationContextAware得到ApplicationContext的原理
Posted pc_m
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ApplicationContextAware得到ApplicationContext的原理相关的知识,希望对你有一定的参考价值。
Spring中,普通bean可以通过实现ApplicationContextAware得到ApplicationContext,需要重写setApplicationContext和getApplicationContext两个方法。我们知道,是通过setApplicationContext将spring的当前的applicationContext得到,那么spring是什么时候执行setApplicationContext方法的呢?
Spring源码中ApplicationContextAwareProcessor.postProcessBeforeInitialization(),对继承自ApplicationContextAware的bean进行处理,调用其setApplicationContext。而ApplicationContextAwareProcessor是在spring容器start的时候生成的。
以上是关于ApplicationContextAware得到ApplicationContext的原理的主要内容,如果未能解决你的问题,请参考以下文章
ApplicationContextAware快速获取bean
Spring初始化ApplicationContext为null
Spring ApplicationContextAware获取上下文
通过ApplicationContextAware加载Spring上下文环境