1. 程式人生 > >Spring Aware理解

Spring Aware理解

通過spring的依賴注入,我們所有的bean對Spring容器的存在是沒有意識的,也就是說我們可以將容器替換成其他容器。但有時在實際專案中,我們不可避免要使用到Spring容器本身的功能資源,這時Bean必須意識到Spring容器的存在,才能呼叫Spring所提供的資源,這就是Spring Aware。

Spring提供如下Aware介面:

           BeanNameAware     獲得容器中Bean的名稱

           BeanFactoryAware獲得當前bean factory,這樣可以呼叫容器的服務

           ApplicationContextAware       獲得當前的application context,這樣可以呼叫容器的服務

          MessageSourceAware  獲得Message Source,這樣可以獲得文字資訊

          ApplicationEventPublisherAware 應用事件釋出器,可以釋出事件,

          ResourceLoaderAware獲得資源載入器,可以獲得外部資原始檔

ApplicationContext介面集成了MessageSource介面,ApplicationEventPublisher介面heResourceLoader介面,所以Bean繼承ApplicationContextAware可以獲得Spring容器所有服務。