当前位置: 首页 > news >正文

海南省建设工程执业中心网站上海网站建设公司

海南省建设工程执业中心网站,上海网站建设公司,网站职能建设论文,濮阳网站建设883664概述 Spring中Aware到底是什么意思? 我们在看Spring源码的时候,经常可以看到xxxAwarexxx的身影,通常我会很疑惑,Aware到底是什么意思呢? 比如图片中这些包含Aware关键字的类或者接口。 我对下面3个类或接口进行了解…

概述

Spring中Aware到底是什么意思?

我们在看Spring源码的时候,经常可以看到xxxAwarexxx的身影,通常我会很疑惑,Aware到底是什么意思呢?
比如图片中这些包含Aware关键字的类或者接口。
在这里插入图片描述
我对下面3个类或接口进行了解释,来体会下aware的含义。
ApplicationContextAwareProcessor:可识别应用上下文的处理器。
BeanFactoryAware:实现BeanFactoryAware接口的Bean希望意识到BeanFactory。
EnvironmentAware:任何实现了EnvironmentAware接口的bean希望去被通知当Environment运行的时候。
aware本身的意思是“知道的,明白的;察觉到的,意识到的;有……意识的,有……知识的”,结合上面的类型或接口的解释,个人认为spring中aware的意思是“可识别的,可意识的”。
因此再碰到包含Aware关键字的接口或类时,我们可以把它理解成,这个类或实现了该接口的bean都是可以识别xxx的。
那问题来了,识别什么呢?个人认为, 应该是可以识别Aware形容的组件。
比如ApplicationContextAwareProcessor是指可识别应用上下文的处理器。
BeanFactoryAware是指可以被识别的beanFactory,因此所有实现了BeanFactoryAware的bean都是能够识别BeanFactory,就是可以识别BeanFactory的bean。

Aware的作用

Spring 的依赖注入最大亮点就是所有的Bean对Spring容器的存在是没有意识的(感知不到Spring容器的存在)。
在实际项目中,我们不可避免的要用到Spring容器本身提供的资源,这时候要让Bean主动意识到Spring容器的存在,才能调用Spring所提供的资源,这就是Spring Aware。其实 Spring Aware是被Spring设计为框架内部使用的,若使用了,你的 Bean将会和Spring框架耦合,所以自己不单独使用。
通常使用 Spring Aware的目的是为了让 Bean获得Spring容器的服务。
在大多数情况下,我们应该避免使用任何 Aware 接口,除非我们需要它们。实现这些接口会将代码耦合到Spring框架,但是希望看过本博客内容之后阅读框架源码不再迷惑。

Aware使用示例

下面是一个实现BeanFactoryAware、ApplicationContextAware接口,获取BeanFactory、ApplicationContext的示例。

public class Person implements BeanFactoryAware, ApplicationContextAware {private int id;private ApplicationContext applicationContext;private BeanFactory beanFactory;public int getId() {return id;}public void setId(int id) {this.id = id;}public ApplicationContext getApplicationContext() {return applicationContext;}public void setApplicationContext(ApplicationContext applicationContext) {this.applicationContext = applicationContext;}public BeanFactory getBeanFactory() {return beanFactory;}public void setBeanFactory(BeanFactory beanFactory) {this.beanFactory = beanFactory;}
}

参考

Spring Aware 到底是什么?

http://www.hrbkazy.com/news/57171.html

相关文章:

  • 设计日本网站网页设计教程
  • 辽宁建设厅网站seo宣传
  • 做淘宝客个人网站网站点击量软件
  • 合肥做网站公司太原网站制作推广
  • asp做的网站后台怎么进去烟台seo快速排名
  • 做网站的叫什么iis搭建网站
  • 服务器搭建网站空间网络项目资源网
  • 东莞物流网站设计公司外贸公司一般怎么找客户
  • 重庆网站建设仿站怎么样关键词优化
  • 建设银行e路通网网站自创网站
  • 建设银行校招网站入口网站seo搜索引擎优化案例
  • 网站内容模板网页游戏
  • 对网站建设的建议那种网站怎么搜关键词
  • 如何做网站的外部链接百度平台营销软件
  • 没网站怎么做京东联盟今日头条搜索优化怎么做
  • 深圳企业网站建设推荐公司百度推广登录首页网址
  • 网站建设的基础条件山东一级造价师
  • 记录网站建设的基本步骤二级域名免费申请
  • 什么摄像头做直播网站公司网站建设价格
  • 企业信息信用系统厦门seo培训
  • 亚泰国际建设股份有限公司网站百度广告价格
  • 对政府网站建设的几点要求福建seo学校
  • 手机自适应网站建站系统源码
  • 视频网站开发平台网页制作模板的网站
  • 云南建站推广hao123网址大全浏览器设为主页
  • 狮山镇建设局网站如何做seo整站优化
  • canvas效果网站seo快速培训
  • 宜昌做网站的怎么在百度上推广
  • 咸宁网站建设品牌营销策略研究
  • 怎么自己做淘宝客网站吗杭州seo按天计费