简单谈谈Spring 中Aware是什么
在spring中,aware是spring提供的一种扩展机制
在一般情况中,是不需要感知容器的存在的,spring 会帮我们自动装配完成。
但是在一些特定的场景下,比如我需要获取spring容器中的某个对象,那么就需要获取到 spring 上下文对象,这时,就可以用到 ApplicationContextAware,这个是spring框架提供的接口,实现这个接口,就可以获取到spring容器上下文对象,继而可以通过上下文对象,获取需要的对象。
为什么通过ApplicationContextAware就可以获取到spring上下文对象,这是因为,在spring的生命周期中,有执行aware接口方法的过程,会调用ApplicationContextAware的setApplicationContext()方法,参数就是spring容器上下文。
在spring中,除了ApplicationContextAware,还有许多其他的aware接口
- BeanNameAware:可以获取当前对象在容器中的名称
- BeanFactoryAware:可以获取BeanFactory 对象
其他aware就不一一赘述了,需要使用,可以针对性的查询