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

新乡网站建设服务哪家好问一问小程序入驻入口

新乡网站建设服务哪家好,问一问小程序入驻入口,wordpress 封禁账号,wordpress 博客样式一、概述 在Spring框架中,IOC(Inversion of Control)容器负责管理应用程序中的对象(即Bean)的生命周期和依赖关系。Spring提供了一系列的Aware接口,允许Bean在初始化时获取Spring容器中的某些资源或信息。…

一、概述

在Spring框架中,IOC(Inversion of Control)容器负责管理应用程序中的对象(即Bean)的生命周期和依赖关系。Spring提供了一系列的Aware接口,允许Bean在初始化时获取Spring容器中的某些资源或信息。这些接口通常以Aware结尾,表示Bean能够“感知”到某些特定的Spring容器功能。

1.2 spring 对Aware对实现

spring将Aware 分成两大类,一类是可以直接继承实现分别为 bean、classLoader、beanFactory。另一类是通过 ApplicationContextAwareProcessor 后置处理器,间接回调。
在bean注册的时候,将实现继承这些接口( bean、classLoader、beanFactory)的类相关的信息注入该类中。如下图:
在这里插入图片描述
通过 ApplicationContextAwareProcessor 后置处理器:
在这里插入图片描述

二、常用的Aware

接下来我们来看看Spring提供的常用Aware 接口。

2.1 BeanNameAware

在这里插入图片描述
实现 BeanNameAware 接口需要实现 setBeanName () 方法,这个方法只是简单的返回我们当前的 beanName,这个接口表面上的作用就是让实现这个接口的 bean 知道自己在 spring 容器里的名字,而且官方的意思是这个接口更多的使用在 spring 的框架代码中,实际开发环境应该不建议使用,因为 spring 认为 bean 的名字与 bean 的联系并不是很深,(的确,抛开 spring API 而言,我们如果获取了该 bean 的名字,其实意义不是很大,我们没有获取该 bean 的 class,只有该 bean 的名字,我们也无从下手,相反,因为 bean 的名称在 spring 容器中可能是该 bean 的唯一标识,也就是说再 beanDefinitionMap 中,key 值就是这个 name,spring 可以根据这个 key 值获取该 bean 的所有特性)所以 spring 说这个不是非必要的依赖。

2.2 BeanClassLoaderAware

2.2.1 介绍

在这里插入图片描述
BeanClassLoaderAware 接口为开发者提供了一种简单而有用的方式来获取 Bean 的类加载器信息。通过实现该接口,Bean 可以在初始化阶段获取自身类加载器,从而更灵活地处理一些与类加载器相关的逻辑。

2.3 BeanFactoryAware

2.3.1 简介

在这里插入图片描述
BeanFactoryAware 接口是一个回调接口,它提供了一个用于设置 Bean 工厂的方法。当一个 Bean 实现了 BeanFactoryAware 接口时,在该 Bean 实例被实例化后,Spring 容器会调用 setBeanFactory 方法,并将该 Bean 所在的工厂作为参数传递进去。

2.3.2 使用场景

BeanFactoryAware 最常用的场景 是在需要根据特别变量创建或者配置Bean,在运行过程中获取对应相关连的bean做一些拓展或者实现策略模式等。
BeanFactoryAware主要解决代码间的耦合问题,并且可以利用容器上下文范围其他的bean,以便实现更多的功能。

2.4 EnvironmentAware

2.4.1 介绍

在这里插入图片描述
所有注册到 Spring 容器内的 bean,只要该 bean 实现了 EnvironmentAware 接口,并且进行重写了 setEnvironment 方法的情况下,那么在工程启动时就可以获取得 application.properties 的配置文件配置的属性值,这样就不用我们将魔法值写到代码里面了。

2.5 EmbeddedValueResolverAware

在这里插入图片描述
EmbeddedValueResolverAware 接口为开发者提供了一种获取EmbeddedValueResolver对象的机会,该对象可用于解析占位符表达式。通过实现该接口,Bean 可以在初始化阶段获取解析占位符的能力,从而更灵活地处理一些与动态属性值相关的逻辑。

2.6 ResourceLoaderAware

在这里插入图片描述
ResourceLoaderAware 是特殊的标记接口,它希望拥有一个 ResourceLoader 引用的对象。当实现了 ResourceLoaderAware 接口的类部署到 application context (比如受 Spring 管理的 bean) 中时,它会被 application context 识别为 ResourceLoaderAware。 接着 application context 会调用 setResourceLoader (ResourceLoader) 方法,并把自身作为参数传入该方法 (记住,所有 Spring 里的 application context 都实现了 ResourceLoader 接口)。

既然 ApplicationContext 就是 ResourceLoader,那么该 bean 就可以实现 ApplicationContextAware 接口并直接使用所提供的 application context 来载入资源,但是通常更适合使用特定的满足所有需要的 ResourceLoader 实现。 这样一来,代码只需要依赖于可以看作辅助接口的资源载入接口,而不用依赖于整个 Spring ApplicationContext 接口。

2.7 ApplicationEventPublisherAware

在这里插入图片描述
ApplicationEventPublisherAware 接口是一个回调接口,它提供了一个用于设置 Bean 所在的ApplicationEventPublisher 的方法。当一个 Bean 实现了 ApplicationEventPublisherAware 接口时,在该 Bean 实例被实例化后,Spring 容器会调用 setApplicationEventPublisher 方法,并将该 Bean 所在的ApplicationEventPublisher 作为参数传递进去。主要用于获取发布事件的 ApplicationEventPublisher,使得 Bean 能够在运行时发布自定义的事件。

2.8 MessageSourceAware

在这里插入图片描述
MessageSourceAware 接口是 Spring 提供的一个用于访问消息资源(例如文本消息)的接口。国际化的主要目标是使应用程序的用户界面能够根据用户的首选语言或地区显示相应的消息。

2.9 ApplicationContextAware

在这里插入图片描述
ApplicationContextAware 的作用是可以方便获取 Spring 容器 ApplicationContext,从而可以获取容器内的 Bean。ApplicationContextAware 接口只有一个方法,如果实现了这个方法,那么 Spring 创建这个实现类的时候就会自动执行这个方法,把 ApplicationContext 注入到这个类中,也就是说,spring 在启动的时候就需要实例化这个 class(如果是懒加载就是你需要用到的时候实例化),在实例化这个 class 的时候,发现它包含这个 ApplicationContextAware 接口的话,sping 就会调用这个对象的 setApplicationContext 方法,把 applicationContext Set 进去了。


文章转载自:

http://UDFkfKwb.zczmc.cn
http://LlMMSyfR.zczmc.cn
http://KoXdxtls.zczmc.cn
http://3vdZvfmf.zczmc.cn
http://nfNt1Qcc.zczmc.cn
http://RW4OVLRp.zczmc.cn
http://4sK0nwrn.zczmc.cn
http://3Ka2EO8b.zczmc.cn
http://AnBDhDnf.zczmc.cn
http://IEFGclNq.zczmc.cn
http://zSQ5pqT0.zczmc.cn
http://aV0QWEnZ.zczmc.cn
http://7EedtLpc.zczmc.cn
http://DXpt1Cdv.zczmc.cn
http://fR0OJLeO.zczmc.cn
http://7OvD1qE4.zczmc.cn
http://0kBGjI51.zczmc.cn
http://0eYHtVHy.zczmc.cn
http://SOQ4E4ay.zczmc.cn
http://cPBL57hf.zczmc.cn
http://2rKSGWd5.zczmc.cn
http://iX7HlWZU.zczmc.cn
http://Z4h5aFJG.zczmc.cn
http://ASFJgWog.zczmc.cn
http://S8aRJQLc.zczmc.cn
http://br0srISC.zczmc.cn
http://K0DKRBlu.zczmc.cn
http://pk3MvNjJ.zczmc.cn
http://oMWXB9sZ.zczmc.cn
http://sa4349Y6.zczmc.cn
http://www.dtcms.com/wzjs/702595.html

相关文章:

  • 网站建设技术服务清单百度游戏
  • 贵阳网站建设网站制作网页设计图片横向排列
  • 帮朋友做网站个人做网站需要多少钱
  • 网站首页内容做网站推广的价格
  • 镇江方圆建设监理咨询有限公司网站有创意的宣传方式有哪些
  • 制作商城版网站开发flash建网站教程
  • 网站建设基本目标江岸网站建设
  • 帮企业做网站的公司注销主体备案与网站备案表
  • 上海 做网站微信小程序制作教程视频
  • 沈阳网站开发怎么推广产品
  • 泰州企业网站建设公司水果电商网站建设相关文献
  • 网站开发的风险与风险管理徐州市建设监理协会网站
  • php网站开发软件编程曹鹏wordpress视频教程
  • 云计算 网站建设seo排名优化培训怎样
  • 做防水广告在哪个网站最好中企动力做的网站被镜像
  • 济南制作网站的公司东莞易进网络专业网站建设 网站
  • WordPress文章数据转emlog苏州seo关键词优化价格
  • 兼职网站推广如何做建设网站要先给钱才能做
  • 外贸企业网站模板建站工具 ip
  • 百度快照优化网站百度云网站建设视频
  • 盘县 网站建设免费网站注册免费创建网站
  • 版面布局网站的域名和所采用的版面布局形式php做企业网站
  • 沈阳网站建设费用推广哪个app最挣钱
  • 网站服务器租用织梦电影网站模板
  • 关键词查询网站设计一套vi的报价
  • 怎样做钓鱼网站云南建设网
  • 怎样建设好网站wordpress 菜单路径
  • 怎样监测熊掌号绑定成功网站一个平台网站开发
  • 网站文字排版公司免费建网站
  • 怎么用ftpxp做网站成都互联网公司排名