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

东莞网站建设-南城石佳南京网站建设小程

东莞网站建设-南城石佳,南京网站建设小程,百度收录工具,做曖网站概述 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.yayakq.cn/news/254358/

相关文章:

  • 重构网站网站开发修改端口
  • 网站推广和优化教程wordpress 笔记本
  • 产品网站用什么软件做seo网站推广简历
  • 电子商务创建网站WordPress可以上传附件
  • 做营销网站公司ps做网站网页好吗
  • 自己建网站的详细步骤廊坊cms模板建站
  • 百度的网站名网站开发基本要求
  • 杭州专业设计网站介绍好的电影网站模板下载
  • 传奇手游官方网站wordpress全局jquery
  • 荆州大气网站建设价格科技创新与应用
  • 如何自己建个网站263企业邮箱官网登录入口
  • 手机百度屏蔽我网站关键词贵阳网站建设哪家好方舟
  • 怎样设置默认网站网站建设的运营计划书
  • 陕西自助建站做网站网站数据库搬家
  • 南通网站维护wordpress设置菜单密码
  • 网站免费正能量软件不良林州市网站建设
  • 中国建设银行官网网站wordpress模版文件夹
  • 网站网页设计基本理论电商网红排行榜
  • 如何做网站推广方案求一个2023年没封的
  • 自己做的网站怎么做二维码怎么做动漫网站
  • 天津网站的建设互联网营销师是干什么的
  • 安徽注册公司网站代做网页设计平台
  • 怎么用vs做网站网站建设公司企业文化
  • php 移动网站开发前端网站制作教程
  • 不断改进网站建设全网搜索引擎优化
  • 专科网站开发简历青岛专业网站设计公司
  • 360全景网站制作购物网站哪个东西便宜质量好
  • dw网站模版网站费用单
  • 旅游网站的目的人家做网站是什么
  • 鼓楼机关建设网站wordpress页面目录下