Spring Aware
Spring Aware
Spring Aware概述
spring的依赖注入的最大亮点是所有的bean对spring容器的存在时没有意识的。即使我们将容器替换成别的容器,如Google Guice,这时Bean之间的耦合度很低。
但是在实际项目中,不可避免的要用到spring容器本身的功能资源,这时我们的Bean必须要意识到Spring容器的存在,才能调用Spring所提供的资源,这就是所谓的Spring Aware。其实Spring Aware本来就是Spring设计用来框架内部使用的,若使用了Spring Aware,Bean将会和Spring框架耦合。
Spring提供的Aware接口
Spring提供的Aware接口如下表所示:
- BeanNameAware:获得到容器中Bean的名称。
- BeanFactoryAware:获得当前bean factory,这样可以调用容器的服务。
- ApplicationContextAware:当前的application context,这样可以调用容器的服务。
- MessageSourceAware:获得message resource,这样可以获得文本信息。
- ApplicationEventPublisherAware:应用事件发布器,可以发布事件。
- ResourceLoaderAware:获得资源加载器,可以获得外部资源文件。